12/26 が仕事最終日でした
弊社はフルフレックス制度なので、「基本的に」という前置きではありますが、昨日12月26日で業務としては終了いたしました。弊社が一次請けで責任を持っているシステムに関しては障害対応等での緊急の稼働はあり得ますがそれ以外の開発は一旦ストップしております。
ずっと継続したシステム運用をご依頼いただいているお客様に加え、新たに古い繋がりから生まれた大きなお仕事や、弊社を巣立ったメンバーと一緒の仕事が実現するなど、大変充実した一年でした。
みなさんありがとうございました。そして来年もよろしくお願いいたします。
納会にて
フルリモートメンバーなので集まって酒盛りのようなことはしていないのですが、短時間ちょっと会話するようなことは継続しています。あまりテーマなど求めずに雑談して終わることが多いですが、今年の話題はあとで振り返りたいかもしれないので少し残しておきます。
まず、知り合いに聞いたところによると いわゆる SES のJOIN条件が以前より高度になっているそうで、下手すると「現場経験5年以上」のような求め方をされるそうです。縁故で入ってしまう弊社では気付きにくいところですが、以前言われていた即戦力というのをさらに超えて、一般以上にできる人を求める傾向になっているのでしょう。
これは今後の採用にはかなり影響があると思うので、大変気になります。弊社はAIの台頭のタイミングから「一時受けのシステム運用含めた仕事」にウェイトを傾けているので、新たな人が入ってきた時にもシステム開発の現場に入りやすい土壌があります。一般のSES業者にはそういうところがないと思われるので、資金繰りの悪化が懸念されると感じました。待機社員が増えるとそのまま経営を圧迫するので、よほどの体力がないとこのタイプのSESは継続できないと思われます。
そういった世間の動きはあるとして、今後の受託システム開発においては「AIにコードを書かせ、レビューし、他のレビュアーに依頼してマージ」という流れになると思う為、これまで「コード書き」という属性だけで仕事できた人に居場所がなくなってきます。全メンバーにこの傾向は都度伝えていますが、改めて伝え直した次第です。
また、上位層のメンバーは「仕事を終わらせる」能力が求められますので、そのための見通しや根回し、並行して仕事を進めるための工夫、大ブレーキが起きないようなポイントについての考え方を改めて問答も交えながら確認しました。長く一緒に仕事している人には言葉としては根付いてきていると思われましたが、実践をより適切にやることが求められます。
少なくとも「開発に時間がかかる」という状態をAIがかなり解消してくれるため、見通しが立てやすくなったことは間違いなく、ボトルネックはほとんど人間であると思って良いでしょう。できるだけ事前にリリースまでの障壁を見通してアクションし、並行したタスク進捗をしてスムーズに完了させるのが理想です。
事前に資料など準備してなかったので、オンラインスライドにポイントを書きつつ進行しましたが、それなりの内容にたどり着けたと思います。
来年以降求められる現場の開発者像
現場の開発者として求められる姿は、AIの台頭で大きく変化したはずです。
- AI に適切に指示して無駄なくコードを書かせることができること
- 書かせたコードをレビューして「とりあえず動く」で完成されたコードを適切に直させられること
- 上記を低コストで行わせる、タスク分解やプロンプトの技術
これは昔あった「カチャカチャ、ターーン!」というコード書きのイメージを大きく覆しています。そしてスキルとしては現場をリードしていたメンバー(テックリードなどリーダー格が多いはず)のスキルの一部になります。
ただし、対人ではないことから「人間とのコミュニケーションが苦手」という人にもできます。だからこそ現場の開発者の基礎知識として数えられます。
ちなみに2についてが開発者個人のスキルにかなり密接になるため、設計スキルを磨くのは必要でしょう。「どこに、何が書かれているべきか」「テストでは何をチェックすべきか」などをある程度持っている必要があります(この知識をもちろんプロンプトにするのですが、適切に遂行されたかチェックできないと意味がありません)。
コードをたくさん書いた経験がなくとも、単一責任やOpen/Closed などの原則、MVC(FatControllerを避けるなど)、疎結合を避ける設計の哲学、テスト容易性など、ベストプラクティスやアンチパターンから学べることが数多くあるので、優秀なレビュアーとなれれば活躍しやすいですね。
開発者としての自分
3年くらい前から「自分が現場の開発者としてどれだけできるか改めてチャレンジしたい」と思って、自身が外部のプロジェクトにJOINする方針に切り替えていました。当時色々と知り合いに相談させてもらってプロジェクトに入れてもらいました。ありがとうございました。
しばらく社長業を中心にしていたので最初はとてもしんどかったのですが、やっている途中でAIコーディングの現場への浸透があり、とても幸運でした。自分の現場感を持った上でAIの評価をして自分なりの付き合い方を決められたのは個人・会社双方にとって大きな利益でした。
今関わっているプロジェクトでも、一応現役25年続けた経験者として尊重していただきつつ、技術難易度の高い開発を任せてもらえて幸運だと思います。そして少し変わったこととしては、たとえば私だけが仕様を理解しているが技術難易度が低いタスクについて以前は「仕様を明文化して誰かにアサイン」のところ「仕様を書いてAIにお願いして仕上げる」に変わったことです。これは先のSESの話とも通じることで「仕様を書いてくれればコード書けます」という人がいても、頼むことはないということになります。
私の場合、https://github.com/ms2sato/agent-console を作ってから複数プロジェクトの複数タスクで並行稼働は容易になったので、ほとんどいつも複数のタスクを稼働させています(今も2-3タスクが動いてます)。そのラインに乗せやすい仕事は他人に依頼する必要がなくなるのですね。先に書いたSESで求められる人材の高度化はこういう部分で納得感が高いです。
「まだまだやれる」感は掴めたので、あと5年くらいは現場の開発者でいられるだろうか。




