Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What is going on with this article?
@cube_3110

やらかしまくった一人プロジェクトの経験談

More than 1 year has passed since last update.

はじめに

この記事は、Qiita芸人 Advent Calender8日目の記事です!

過去の経験談です。
自戒の意味も込めて書きたいと思います。

スペック

エンジニア歴約3年
業務でのWEB開発の経験無し
C言語やC++で組み込み系や業務系の開発を2年、JavaでAndroidアプリを半年ほど。
プロジェクト参画前、PHPは事前に「独習PHP」を一通りやったくらいしか触った経験がなかった。

当時の開発時の状況や前提についてざっくり説明

・PHPのバージョン: 5.0系
・推奨ブラウザ: IE8
・エディタ: サクラエディタ
・VPN接続
・開発環境と本番環境が一緒
・バージョン管理: 無し
・別の会社からコードの保守権限を受け取り開発の中身や知見を知ってる人が他にいない
・一人プロジェクト(一応スケジュール管理だけするなんちゃってPMがいた)

自分がやったこと

開発環境を整える

・Git導入
・VSCode導入

ソースコードを一通り読んで作りをざっくり理解する

・ModelBean、ViewBeanって"bean"を多用してたので恐らく前任者がJavaをメインでやってたのかなといった作りになってた。
・MVCの概念で作られてた。
・HTMLにPHP埋め込みはなかった。(これのおかげで仕組みを理解するのは難しくなかった)
・コメントが丁寧

シーケンス図を書く

PlantUMLでざっくりシーケンス図を書きました。

要件確認(RD)

やりたいことはまあなんとなくわかった。

設計(SS)

正直、中のソースコードをまだ理解しきれてなかった段階での設計だったので考慮漏れが多数発生したグダグダな設計だった。
→ここから地獄は始まる・・・

クソコードを製造(PG)

基本的に自分はコーディングする時、機能実現を優先するのだが思ってる以上に設計がグダグダだったので探り探りのコーディングになってしまった・・・
自分が一番システムについて理解しているという現状なので聞ける人もおらず、そのまま開発は進む。。。
開発の段階で結構手戻りとか設計漏れが発生し、コーディングを必死にやりつつ少しずつ先に進みはするものの刻々と時間は過ぎ、納期が近づいてくる・・・

具体的にどんなコードを書いてたのかは別記事で紹介しようと思ってます。
PHP Advent Calenderの14日目の記事で公開予定。。。
https://qiita.com/advent-calendar/2019/php

コードレビュー無しでテスト工程へ・・・

これが一番やばかった・・・
自分は納期もあるし、後半の時点で既に開発の時間の締め切りが近づいてて余裕がなかったため、コードをちゃんと書けてる自信がないのでレビューをして欲しかった。

お願いした時のやりとり
わい「コードレビューして欲しいです、お願いできませんか?」
PM「いや俺、C#しか書けないしPHPは分からんわ」
わい「(⌒,_ゝ⌒)」

テスト(PT)

Excelに画面スクショする例のやつです。
テスト仕様書は作る時間がなかったので設計書をそれ用にして色塗りしました。
ちなみに障害は40件以上出しました。
ほぼバリデーション系とかのエラーがほとんどでしたが設計時点での考慮漏れも複数ありました。
割と心が折れそうになった瞬間でした・・・

テスト(IT)

このテストでは、ほぼ障害が出ませんでした。。。
正直これにはかなりホッとしました。
PTで網羅できてたからだと信じたい・・・

引き継ぎ

この辺でVSCodeの使い方とかGitの使い方をExcelでまとめたりしてPMの人に色々引き継ぎをしました。。。
一応ちゃんと引き継ぎをしたつもりですが、正直この先そのPMの人が何とかかんとかこのプロジェクトを進めていくのかなぁと思うとプロジェクトを抜ける申し訳なさと罪悪感を感じました。

終わりに

ギリギリ納品完了まではいれなかったのですが一応リリース作業は終わっていて大変でボロボロのプロジェクトだったけど不思議と達成感はありました。

きっとあの後、担当する人には負担をかけるなぁと思ってしまいましたがこの反省を生かしてゴミコードを生産しないように気をつけたいと思います。

1
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
cube_3110
自動車大国である地元の愛知から脱却し、現在都内で働いているエンジニア。 エンジニア5年目に突入。 今は某SaaS開発会社でRails触ってます。 Twitterでも積極的に発信してるのでもし良かったら絡んでください。
commew
ゆるく、つながる、たすけあう 困りごとの共有や相談、学習報告などを通して「ひとりで働いていても孤独ではない」空間へ

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
1
Help us understand the problem. What is going on with this article?