logo

ナオツのプロフィール

ナオツのプロフィール

ナオツ

naotsu

更新日:

概要

エンジニア歴約13年。 大手SIerで2009~2015年頃まで物流や会計分野のシステム開発に従事。 それ以降はフリーランスとしてWeb系企業中心にWebサービスのシステム開発を行う。 業務内容は、要件定義、設計、製造、テスト、移行(リプレイスの場合)といったシステム開発全般に携わる。スキルセットは下記に記載。 バックエンドを専門としていたが、ここ数年はフロントエンドも合わせて両刀で開発している。 現在は、バックエンドもフロントエンドも主に TypeScriptだけ で開発できることを目指しており、「React, Next.js, NestJS」が現在需要が増えつつあり、また将来的にも明るい技術だと信じている。 契約するクライアントさんの仕事も、これらのキーワードが絡んでることが多い。 現在はデータ分析を身につけるべく、数学・統計学から始まりPythonのライブラリについて勉強する日々を送っている。

好きなもの

  • 読書
  • 野鳥観察
  • 自分が今できない技術を勉強すること

嫌いなもの

  • 人と同じ
  • 無駄な会議
  • 飲み会
  • 各種ハラスメント(駆逐したい)
  • マウントとるエンジニア
  • 会社に依存してる人
  • 文句は言うけど行動しない人

スキルセット

マークアップ・UIデザイン

HTML

HTML5
Haml
Slim
Markdown
経験年数: 7

CSS

CSS3
SCSS
Tailwind CSS
経験年数: 7

Figma

経験年数: 1

フロントエンド

React

Next.js
Redux
Typescript
経験年数: 3

ReactNative

Expo.io
備考/tools: モバイルなのでReactと分けてます
経験年数: 1

Vue.js

Nuxt.js
経験年数: 1

その他JavaScript

jQuery
Bootstrap
経験年数: 4

バックエンド

Java

Struts
Spring
Seasar2
Apache Tomcat
Maven
備考/tools: Eclipse
経験年数: 5

Ruby

Rails
備考/tools: ~v6.0
経験年数: 4

Go言語

Echo
gqlgen
gRPC
経験年数: 2

Node.js

express.js
NestJS
経験年数: 1

DB

Oracle DB

PL/SQL
備考/tools: SQLdevelopper, ObjectBrowser
経験年数: 5

MySQL

備考/tools: A5M2, MySQLWorkbench
経験年数: 2

PostgreSQL

備考/tools: A5M2, pgAdmin
経験年数: 3

Cassandra

経験年数: 1

Firebase Firestore

Typescript/Go言語用ライブラリ
経験年数: 1

MongoDB

mongoose
経験年数: 1

インフラ

AWS

EC2
RDS
ElastiCache
Fargate
備考/tools: その他いろいろ
経験年数: 3

Firebase

Auth
Firestore
経験年数: 2

Docker

docker-compose
経験年数: 4

kubernetes

AKS(Azure)
minikube
経験年数: 0.5

その他

シェル

Bash
Csh
経験年数: 10

Excel VBA

経験年数: 1

VSCode

経験年数: 5

職務経歴

1: 大手商社向け貿易関連システム開発

参画期間

2009年04月 ~ 2010年03月

案件の説明

大手商社向け業務管理システム構築。自社の輸出入商品について、事前に専用の画面で関税など輸出入に関わるチェックを事前に行うシステム。 新入社員で未経験で入っていきなりJavaでガッツリ開発。 設計書に沿って実装を進めていたが、今思えば何の機能を作っていたか全くわかりません(笑)

使用した技術

HTML
CSS
Java
JavaServlet
JSP
VBA
Eclipse

担当フェーズ

詳細設計
製造
単体テスト

チームメンバー数

20人

契約形態

正社員

2: 大手金融計企業様向けの基幹システム再構築

参画期間

2010年04月 ~ 2011年04月

案件の説明

大手金融企業の基幹システム再構築のための移行プログラム開発案件。 ネットから隔離されたガラス張りのセキュリティ室で、永遠移行用SQLを1000本実装。 これを機にSQLが誰よりも書けるようになる。

使用した技術

Oracle10g
PL/SQL
Object Browser

担当フェーズ

実装
単体テスト
移行

チームメンバー数

100人

契約形態

正社員

3: コンビニ企業向け商品会計システム再構築(マスタ管理)

参画期間

2011年05月 ~ 2013年01月

案件の説明

大手コンビニの会計処理に使う大規模マスタ管理システム開発案件。ここで初めて設計から本番導入まで行う。 これを機にモノとカネの流れがわかるようになり、一連のシステム開発ができるようになる。 とくに顧客から高く評価をいただいた案件でもあり、なぜか一緒にバンド活動もやったりする仲に。 ちなみに、バンド名は「rm *(アールエムアスター)」。

使用した技術

Solaris
Oracle10g
PL/SQL
Csh
Perl
JavaServlet
Object Browser
HULFT
JP-1

担当フェーズ

基本設計
詳細設計
実装
単体テスト
結合テスト
総合テスト
移行
インフラ
本番導入

チームメンバー数

60人

契約形態

正社員

4: ゲームプラットフォーマー企業のサーバサイド保守開発

参画期間

2013年02月 ~ 2014年06月

案件の説明

誰でも知っている巨大ゲームプラットフォームを持つ大手企業様のサーバーサイド(API)開発案件。 ひたすらJavaでAPIを実装する案件で、同時に残業のない初めての案件。 この案件で、ただのプログラマーでは一生これ以上稼ぐことはできないと認識。 資格の取得やプログラミング以外の勉強を始める。

使用した技術

Linux
Cassandra
MySQL
JavaServlet
Eclipse

担当フェーズ

詳細設計
実装
単体テスト

チームメンバー数

50人

契約形態

正社員

5: アパレル企業向け基幹システム再構築(販購買,在庫管理,会計)

参画期間

2014年07月 ~ 2015年01月

案件の説明

ERPパッケージを用いた初めての案件。 そして初めての炎上ブラック案件。 一応小さなチームを任せてもらえるようになったのもここが初めて。 チームをまとめながら求められるものは作っていったが、毎日遅くまで仕事し土日も出勤する生活でキャパシティオーバー。 退職を考える。

使用した技術

Solaris
Oracle11g
PL/SQL
JavaServlet
Bash
SMTP
SQL developper
Eclipse
ASTERIA
Oracle JDE

担当フェーズ

インターフェース設計
製造
インフラ構築
チームリーダ

チームメンバー数

30人

契約形態

正社員

6: 大手電子部品メーカ向け部品表管理システム保守開発

参画期間

2015年02月 ~ 2015年03月

案件の説明

疲弊していた僕を休養させるため会社が用意した案件。定時帰りに戻る。 システム間インターフェースのプログラム実装。 ここで日々の仕事を午前中で終わらし、午後は転職のための勉強やスキルアップに充てるようになる。 その時のリーダーさん談「そういうの、、家帰ってやってくれよぉ」。ごめんなさい、無視しました。

使用した技術

Linux
Oracle10g
Bash
VBA
Oracle Data Integrator

担当フェーズ

インターフェース設計
実装

チームメンバー数

5人

契約形態

正社員

7: 食品素材メーカー様向け基幹システム再構築 (販購買,在庫管理,会計)

参画期間

2015年04月 ~ 2015年06月

案件の説明

2度目のERP案件。そして2度目の炎上ブラック案件。 そして基幹システムの機能ごとに受注した企業が違うという特殊な案件。 社内だけでなく他社のSIerとコミュニケーションをとるというストレスフルな環境で、さらにExcelしかいじれない上司とExcelも触ったことがない後輩しかいないところに投入される。 一応開発のチームリーダーだったが、当初自分しか手を動かせるメンバーがおらず、途中からそれなりの力量をもったメンバーが投入されるも産休あけで昼過ぎには帰ってしまう状況。 ついに心身を病んで退職。

使用した技術

Oracle11g
PL/SQL
SQL developper
Oracle JDE

担当フェーズ

インターフェース設計
帳票設計
チームリーダ

チームメンバー数

20人

契約形態

正社員

8: 配送システム新規構築

参画期間

2015年09月 ~ 2015年10月

案件の説明

初めて転職して2か月で退職した案件。 人生初のパワハラ上司に遭遇。(!) もともと心身が弱っていた上で転職だったので、うまく立ち回りできず終了。 面接のときに「パワハラします」って先に言っておいてほしいですよね。 ここで正社員で契約することが、いかに面倒であるということを思い知り、フリーランス転向へのきっかけになる。

使用した技術

Cent OS
Oracle11g
Apache Tomcat
AWS EC2
AWS RDS

担当フェーズ

顧客折衝
基本設計
インフラ構築

チームメンバー数

4人

契約形態

正社員

9: 生命保険企業様向け保険料計算システム開発

参画期間

2015年12月 ~ 2016年05月

案件の説明

フリーランスになって初めての案件。 といってもSIer企業経由の二次請け。 とりあえず休息が必要だった僕は、エージェントに「とりあえず稼働が少ない・安定している案件くれ!」と頼んだ結果ここになった。 中国人の方がリーダーでメンバーが日本人という特殊仕様。

使用した技術

Cent OS
Oracle12g
Apache Tomcat
SQL developper
JavaServlet
jQuery
HTML
CSS
Terasoluna
Eclipse

担当フェーズ

基本設計
詳細設計
製造
単体テスト
結合テスト
総合テスト

チームメンバー数

10人

契約形態

フリーランス(業務委託)

10: 自社部品管理パッケージ開発,機能拡張開発

参画期間

2016年06月 ~ 2017年03月

案件の説明

フルタイムって働きすぎでは?と考えた僕がエージェントを変更し、週4日案件を探してもらったのがこの案件。 都会の喧騒を離れたマンションの一室で小鳥のさえずりを聴きながらの開発案件。 ここで少しづつ心身のエネルギーが戻ってくる。 開発の仕事自体はそれほど大変ではなかったが、自分にはJava一本しか武器がないことを懸念し、仕事とは別にRubyを独学で勉強し始める。

使用した技術

Oracle11g
MySQL
Apache Tomcat
SQL developper
JavaServlet
jQuery
Bootstrap
HTML
CSS
Eclipse

担当フェーズ

インフラ構築
基本設計
詳細設計
実装
単体テスト
結合テスト
移行

チームメンバー数

3人

契約形態

フリーランス(業務委託)

11: 自社BtoB在庫管理システムの再構築

参画期間

2017年04月 ~ 2018年03月

案件の説明

Rubyを勉強し終わったあとに獲得した案件。 元はと言えば週3日稼働の案件を探していたが、そういった企業は「Rubyの業務経験1年以上」という条件の案件がほとんどだったため、この案件で業務経験を積むことにしてちょうど1年で契約終了。 ここは、いわゆるスタートアップ系のイケイケ企業で、社長が僕と同い年だったことに焦りを感じる。(笑) なぜかここの新入社員のOJT(教育係)みたいなこともやることになる。 チームリーダーが昼まで遅刻してくる上、彼の仕事までやる羽目になり(ぜったいゆるさん)、結構な仕事量をやることになったが、Rubyはここである程度できるようになった。

使用した技術

Ubuntu
PostgreSQL
MySQL
Ruby on Rails
Git(Github)
jQuery
Bootstrap
Vue.js
HTML
CSS
VScode

担当フェーズ

基本設計
詳細設計
実装
単体テスト
結合テスト
教育係

チームメンバー数

8人

契約形態

フリーランス(業務委託)

12: 自社BtoCバス料金比較サイト保守開発

参画期間

2018年04月 ~ 2021年06月

案件の説明

初のBtoC案件で、週3日案件を獲得。 1年半ほどはRubyの開発をやっていたが、途中からフロントエンドの開発を結構やることになる。(これは希望して) フロントエンドにほとんど触れてこなかったことへの焦りから率先して担当するようになり、Vue.jsとReactは一通り実装できるようになった。 この案件は、機能単位ではなくある程度大きなサービス単位で仕事を任せてもらえることが多く結構好き勝手やらせてもらっていた。 コロナの影響もありフルリモートでの業務が続いていたが、3年以上同じ現場で業務自体に飽きてきたこともあり、新しいスキルを身につけるべく契約終了を宣言。

使用した技術

PostgreSQL
Ruby on Rails
Git(Github)
jQuery
React(Next.js)
Vue.js(Nuxt.js)
Swagger
HTML
CSS
VScode

担当フェーズ

基本設計
詳細設計
実装
単体テスト
結合テスト
リリース作業

チームメンバー数

15人

契約形態

フリーランス(業務委託)

13: 自社CtoCアプリ新規開発

参画期間

2019年01月 ~ 2019年07月

案件の説明

初の人脈による案件獲得。 しかも初のスマホアプリ開発。 サービスの立ち上げ時から参加したので、開発以外にも仕様検討などもする。 知り合いのツテで開発メンバーを増やして、チームリーダーっぽいこともやった。 クライアントの資金切れで、半年ほどで空中分解した。

使用した技術

ReactNative
Firebase Firestore
VScode

担当フェーズ

基本設計
詳細設計
実装

チームメンバー数

3人

契約形態

フリーランス(業務委託)

14: SES企業の相談役

参画期間

2020年11月 ~ 2021年01月

案件の説明

前回スマホアプリ開発をやった企業(前述)の別案件。 自分が実装するわけではなく、開発の相談役として参加。 見積作成や機能管理、進捗管理などをアドバイスしいたが、バングラデシュのエンジニアとのコミュニケーションに苦戦。 僕が参画した時点で、Excelの設計書にあったワイヤーを「UIデザイン」と勘違いしたエンジニアが、Excelと全く同じデザインの画面を作成してしまっていた。 エンジニア未経験者たちが仕様をまとめたのが原因で炎上化して、PJ自体終了。

使用した技術

React

担当フェーズ

見積作成
各種マネジメント

チームメンバー数

5人

契約形態

フリーランス(業務委託)

15: C2C音声メディア系スマホアプリ開発

参画期間

2020年11月 ~ 2021年07月

案件の説明

エージェント経由ではなくマッチングサイトで契約したSES系企業の開発案件。 SESといっても全員がリモートワークでメンバーとは一度も会ったことはない。 Rubyが落ち目なのを危惧し、Go言語のキャリアを積むために参画した案件。 Go言語の実務経験を得ることに成功し、その後のキャリア形成に寄与。

使用した技術

Stoplight(API doc)
Go言語

担当フェーズ

設計
実装

チームメンバー数

2人

契約形態

フリーランス(業務委託)

16: シェフ向けレシピ公開サイト新規作成

参画期間

2021年02月 ~ 2021年10月

案件の説明

マッチングサイトで契約したSES系企業の開発案件の第2段。 第1段で信頼を得て、バックエンドだけでなくフロントエンドも合わせて実装を進め、なぜかメンバーのマネジメントもやるようになり、最終的に要件定義にまで口を出していた案件。 メンバーは世界中に住んでいる日本人で、カナダ・ドイツ・フィンランド・フィリピンにいる開発メンバーたちに開発指示を送るも、時差による返信のタイムラグに難しさを覚える。 技術的にはモダン中のモダンでその後の案件受注にかなり貢献した。

使用した技術

Stoplight(API doc)
Go言語
Next.js
React

担当フェーズ

要件定義
設計
実装
マネジメント

チームメンバー数

6人

契約形態

フリーランス(業務委託)

17: ビルの空きスペースレンタル業者向けアプリ開発

参画期間

2021年07月 ~ 2021年09月

案件の説明

Go言語の実務経験を活かして受注した最初の案件。 よし!ここでさらに腕を磨こう!と息巻いていたが、3ヶ月限定のスポット案件だったことを参画してから知る。 Go言語でMicrosoftのAzure APIを使って、Outlookのカレンダーやメールに連携するという結構マイナーな実装を任される。 ここでわかったのは、Go言語でよくありがちな「クリーンアーキテクチャ」という思想は、サービスの規模によっては生産性を損なうということ。 Go言語自体に疑問を持ち始める。

使用した技術

Go言語
Azure

担当フェーズ

設計
実装

チームメンバー数

3人

契約形態

フリーランス(業務委託)

18: 治験向け質問・回答管理システム

参画期間

2021年10月 ~ 2022年01月

案件の説明

前回はバックエンドだけのスキルしか求められなかったので、フロントエンドも合わせてフルスタックに開発できることを期待して参画した案件。 自社サービスということもあり、当初1年くらい参画する想定だったが、リーダーのマネジメント経験が浅く、結局社員だけでリソース足りるのでは・・・?という結論に至り3ヶ月でおさらばした。 ここはとにかくマネジメントがずさんで、1週間かけて開発したものが仕様整理した結果突然不要になったりすることが多発し、合計で約1ヶ月半の仕事が無駄になった。 マネジメントの大切さを学ぶとともに、やはりGo言語でのクリーンアーキテクチャを採用しており、生産性の低さを実感する。 「Goは書いてて楽しくない」 その思いから、TypeScriptによるバックエンド領域に興味を持ち始め、業務外でNode.jsのフレームワークであるNestJSの勉強を始める。 フロントではすでにTypeScriptを使ってReactを実装していることもあり、TypeScriptだけでフルスタック開発している案件を探すことになる。

使用した技術

React
TypeScript
Go言語

担当フェーズ

設計
実装

チームメンバー数

3人

契約形態

フリーランス(業務委託)

19: 仕事マッチングサイト保守開発

参画期間

2022年02月 ~ 現在参画中

案件の説明

クラウドワークスのような個人・法人問わず、業務委託の仕事をインターネット上で発注・受注することができる仕事マッチングサイトの保守開発案件。 自社サービスで資金も潤沢であるという背景もあり、優秀なエンジニアをたくさん抱えている企業。 フロントエンドもバックエンドもTypeScriptで実装しており、開発チームも「フロントチーム」「バックエンドチーム」という分け方をしていない。 すべてのエンジニアがフロントもバックエンドも実装するフルスタック標準。 現在この案件でフルスタックでTypeScriptのスキルを磨きながら、業務外ではデータ分析や機械学習などの学習を始める。 今後はそちらの方面でも活躍していく予定。

使用した技術

TypeScript
React
Nest.js
express.js
MongoDB

担当フェーズ

設計
実装
マネジメント

チームメンバー数

3人

契約形態

フリーランス(業務委託)

Ads

すべての記事

  • すべての記事を読む

システム開発関連の記事

  • システム開発関連すべて
  • インフラ
  • Git

UIデザイン関連の記事

  • UIデザイン関連すべて
  • Figma

フロントエンド関連の記事

  • フロントエンド関連すべて
  • フロント技術全般
  • React

バックエンド関連の記事

  • バックエンド関連すべて

開発環境関連の記事

  • 開発環境関連すべて
  • Windows

生活関連の記事

  • 生活関連すべて
  • フリーランス
  • 学び