【ゴールデンウィーク営業のお知らせ】
2025年4月29日(火)~2025年5月6日(火)の期間を休業とさせていただきます。
※4月30日(水)5月1日(木)、2日(金)は通常営業いたします。
※休業期間中にいただいた審査申請については、結果をお返しするために数営業日いただくことをご了承ください。
スーパーエンジニアが抜けても変わらない組織を作りたい
これまで多くのプロジェクトに携わってきた中で、開発したものを引き継いでいく難しさを感じてきた。この業界は人材の流動性が非常に高いが、顧客は当然サービスの継続と品質の維持・向上を求めている。従って、顧客のために最もするべきなのは、スーパーエンジニアが抜けても変わらない組織を作ることであると考えるようになった。具体的には、どんなノウハウを共有してほしいかという点を明確に示したり、チーム内で技術力を高めるための勉強会を開催したりし、さらに情報共有を高く評価することによって、ノウハウや技術の共有が文化として定着したチームを作りたい。
学会大会を行うシステムにおける演題投稿採否機能のリニューアル
PM1名、デザイナー1名、開発リーダー、開発~リリース担当1名、開発1名体制での開発リーダー
・要件定義
・フロントエンド開発
・バックエンド開発
・単体テスト
・統合テスト
・リリース
・運用/保守
・バックエンド
Struts2、AWS Lambda
・フロントエンド
thymeleaf、jQuery
・Webサーバー
nginx、tomcat
・リリース/保守
AWS ECS、AWS ECR、AWS ELB、AWS Cloudwatch
学会が研究発表会の参加受付や投稿受付を行うシステムである。
本機能が数年間運用されてきた結果、複数のお客様から「採択/不採択だけでなく、条件付きでの採択ができるようにしてほしい」という声をいただいた。その要望に応えるのが本プロジェクトの目的である。
私がマネジメント初経験であった。また、開発担当のうち一人が本システムの改修経験が少なかったため、しっかりサポートする必要があった。
また、機能追加の影響が大きく、多くの画面や機能を改修する必要があった。
プレイングマネージャーとなった自分自身も含めた適切なタスク配分と、それに対する進捗の確認が必要であったため、1タスクはなるべく1日以内で終わるよう細分化し、GithubのIssueとZubeを活用してその進捗管理を行った。
また、特に本システムの経験の少ない開発担当については、質問しやすい環境を作るなど、個別にケアすることを心がけた。
この対応によって、途中で当初想定していなかった大きな改修が必要になったりしたものの、遅滞なくプロジェクトを終わらせることができた。その結果、上司だけでなく部下にも、エンジニアだけでなくリーダーとしても評価してもらえるようになった。
途中で改修に想定の数倍の工数が必要な機能があることが発覚した。
課題についてPMやプロジェクト外部のテックリードに相談しつつ、スケジュールの組み直しを迅速に行い、リリース日程が変わらないようにした。
また、今まで本システムに関わってきたエンジニアとしての経験を活かすことができたため、工数は膨らんでしまったもののプロジェクトは無事期日通りリリースできた。
学会共通アカウントシステムのリニューアル
PM1名、デザイナー1名、開発~リリース担当1名体制での開発~リリース担当
・要件定義
・フロントエンド開発
・バックエンド開発
・単体テスト
・統合テスト
・リリース
・運用/保守
・バックエンド
Spring boot、AWS Lambda
・フロントエンド
thymeleaf、jQuery
・Webサーバー
nginx、tomcat
・リリース/保守
AWS ECS、AWS ECR、AWS ELB、AWS Cloudwatch
学会が研究発表会の参加受付や投稿受付を行うシステムと連携し、どの学会やどの発表会でも同じアカウントを使えるようにするためのシステムである。
本システムはリリースからの数年が経っているが、期待しているより利用されていなかった。そこで、実際にお客様や運用担当から寄せられた点を元にリニューアルを行うことになった。
・ログイン認証
・学会が研究発表会の参加受付や投稿受付を行うシステムとのAPIによる連携
・学会の会員管理システムとのAPIによる連携
Spring boot側で用意されている機能について調べ、それを活用してAPIによるデータのやり取りなどを自力で実装せずに済むようにし、短いプロジェクト期間に間に合わせた。
本プロジェクトは初めからタイトなスケジュールであったうえ、要件定義での見積もりが甘く、大半の画面ではフロントエンドを新デザインに変えるだけですむ計画であったものの、実際にはほとんどの画面でバックエンドの改修も必要となった。
既存プロジェクトのリニューアルであるので、とにかくコードをしっかり読んで、手戻りがないようにすることを意識した。また、事前にSpring Frameworkについて予習しておき、フレームワークの仕様が理解できないことでつまづかないようにもした。
その結果、タイトなスケジュールであった上作業工数が予定の倍近く膨らんだものの、期日通りリリースすることができた。これによりエンジニアとして大きな評価を受けることができた。
・様々な方法によるシステム構築
・上流工程の経験
頻繁な報告や質問に対するレスポンスの速さを求められず、開発に集中できること。