読了: 約 3 分

プロジェクトを異動して1ヶ月。前のプロジェクトも引き続き運営中ではあるのだが、多少の運用だけという状態になっていて、異動したプロジェクトでJava、JSP、tomcat、Eclipse等自分がこれまで知らなかったものとの出会いも増えた。

異動する時にも期待しているよと言われていたので、多少のプレッシャーがあったが、ナントカ既存のユーザーに対して安定してサービスを提供出来るように運用するチームで動くいう事を行えている事について掘り下げてメモ。

サービスもチームも生き物

WEBサービス、特にスマホアプリは開発や変更のサイクルが早い。アジャイル開発と呼ばれているが、JIRAでスプリント組んでKPTを毎週か隔週タスクの量によってPDCAを回す。エンジニアは増えて来て、チームの中では12名。ラインを分けていて、12名がサーバー、フロント、ネイティブiOS、androidで分かれ、新規機能の開発とこれまでの運用改善が4名。ソースレビューはGithub, デプロイはJenkinsという開発環境。

そういう開発のチームの中に如何に早く溶け込み、自分のバリューを出すかだけが重要だ。これは受託開発の会社でも、メディア会社でも同じかと思うが、特にメディアのスマホアプリを作っている場合大事。受託の場合短期間で終わってしまうというのとクライアントがいるから大切だが、メディアの場合は継続してチームに所属して開発していくので、雰囲気や最初に実力を出して、自分のやりたい事や出来る事を明確化して立ち位置を曖昧にしない事。

だから、自分自身も変化に強い人間でないとメディアの開発は絶対に難しい。

新人のマネジメント

●ディレクションにおける仕様的な面
アプリ開発においては仕様を自分で決めにいく、誰かに任せると結局エンジニアに回ってくる事が多い。数値結果を見た上で、仕様変更が重なるというのは理解できるが、初期開発における仕様変更や曖昧な点を残すというのは時間とコストの無駄。

フロントエンドだけではなく、サーバーのAPIに変更が欲しい場合があるが、システムディレクションを自分自身でやるのは、新人にとっては難しい。優先度を明確にし、サービスへのインパクト度数で把握出来るように数値化できれば解決する問題なのだろう。

●ディレクションにおける技術教育的な面
フロントエンドといっても、HTML/CSS/JavaScriptとJavaのテンプレート等、開発のプロジェクトによって環境は異なると思う。その上で、何が得意で何が得意でないかを最初に知り、業務を跨ぎタスクに取り組む際に予め、ボトルネックになりそうな場所を想定し、その質問が来ても対応出来るようにしておく。

フルスタックエンジニアと叫ばれる昨今、強みを伸ばすというのと、弱みを平均にするというのはどちらが正しいのかは難しいがバランスを見ていきたい。

間に立つ人間(既にサーバーかフロントの技術を要している人が望ましい)というのは、スムーズな開発を行う上で、メディアを運営している会社には必要だと考えている。開発のマネジメントをしながら実力を伸ばすというのもマネジメントの仕事なので、日々新しいミッションややるべき事に精進したい。

ブログに残すというのは、【再現性】を生み出すという点で有効かと思うので、いつかの為に残しておく。