見出し画像

開発初心者のエンジニアが一年働いてみて学んだこと

こんにちは。
昨年からフロントエンドエンジニアとしてアジケに入社して、早1年が経ちました。
時間が経つのは本当に早いもんですね。
あっという間の一年でした。

さて、昨年はエンジニアとして様々な開発業務に携わることができました。
主な業務は、HTML/CSSを使用したコーディング作業、JavaScriptを使用したWebサービスの開発です。
初めての開発業務で感じたこと・学んだこと・こうすれば良かったと思うことが多いので、振り返っていきたいと思います。

僕は業務未経験からスタートしており、
似たような境遇の方に少しでも参考になれば幸いです。

案件の仕様を把握する

開発作業を進める上で、色々な仕様があると思います。
まずこの仕様をしっかり頭に入れて理解してから作業しましょう。
後々のテストや納品前に大変なことになります。(体験談)
気になることはどんどん確認して認識のズレを無くしていきましょう。

仕様で例を出すと、どのデバイス・ブラウザまで対応させるか?など。
開発する際は、もちろんその仕様を考慮しながら開発を進めないといけませんよね。
自分は技術不足と確認不足もあり、そこが考慮できてませんでした。
実機でデバッグする際に動かない、納品日にバグを見つけドタバタした辛い思い出があります。なんとかみなさんの助けもあり、納品まで間に合わせることができました。

その経験から、対応させるデバイス・ブラウザは漏れが無いようにシートで管理するようにしました。結果、漏れが無くなりスムーズに開発を進めることができるようになりました。

スクリーンショット 2021-03-16 14.31.15

また、デバイス・ブラウザはそれぞれに特性があり、思わぬところでバグが発生する時があります。事前に特性を頭に入れた上で開発に望めると尚良いと思います。

開発が終わった今思うことは、仕様以外でも、いろんな不安材料は洗い出しおきましょう。
もちろん作業中に他にも問題点が出てくると思いますが、とにかくこまめに相談しましょう。

全体デザインを把握し認識を合わせる

コーディング作業の大まかな流れはデザイナーが作ったデザインを見ながら開発をします。
その中でデザイン上から読み取れないことっていくつかありますよね。
例えば、マウスホバーの挙動やアニメーションの挙動など、、
その認識を合わせないまま開発に入ってしまいました。
結果、修正が必要になり、時間を浪費しました。
自分が修正するのも、確認相手に時間を取らせてしまうのも嫌ですよね。

なので、着手前にデザインを見ながらデザイナーと認識を合わせる場を必ず設けるようにしました。そのおかげで認識のズレなど少なくなり、作業の無駄を削減することができています。また、ディレクターを巻き込んでデザインを確認し改善点を議論することもできメリットが多いです。

他には、デザインから読みとれないものを実装する時は、あらかじめ自分でデザイナーに「こういうイメージでどうですか?」と聞くようにしています。それをすることによってデザイナーの求めているものや、デザインの意図を知ることができ、とても良い機会になっています。

ぜひ参考にしてみてください。

タスク・スケジュール管理に慣れる

エンジニアの作業は開発だけありません。
工数の見積もりやスケジュールの制定などの作業も必要になってきます。
ここを怠ると、タスクが手一杯になったりスケジュールがギリギリになってしまうなど、かなり辛い目にあうかもしれません。
かと言って、開発経験がないのに工数の見積もりを出すのはかなり難しいですよね。
今でも工数の見積もりは、なかなか慣れておらず苦労することが多いです。

工数の見積もりなどは、短期間ですぐに身に付けれるものではないので以下のことを意識して作業しています。

- タスクの進捗状況を明らかにする
- 全てのタスクに優先順位をつける
- バッファを持たせたスケジュールをたてる
- 今日やらなければいけないタスクを毎日書き出す
- 工数を考えた後、先輩や上長に相談してみる

最初は、自分で工数を考え、先輩や上長に相談してみるといいと思います。
それを繰り返していけば少しずつ慣れて考えれるようになってくると思います。

また最近一番大事だと思うのは、バッファを持たせたスケジュールをたてることだと感じます。
スケジュール通り進めることが出来ていても、思わぬところでトラブルが起きたり、急遽修正が入りドタバタすることがよくあります。是非それを想定した上でスケジュールを考えてみてください。

エンジニアに限らず、他の職種でもタスク・スケジュール管理は必要になるかと思います。
最初は大変だと思いますが、上記の例を参考にぜひ取り組んでみてください。

コミュニケーションをこまめに取る

エンジニアになって特にコミュニケーションの大切さを実感します。
弊社は昨年4月から完全リモートでの作業になり、特にコミュニケーションの部分で苦労したことが多かったです。

それを改善する為に毎朝、チームでコミュニケーションを取れる場を設けています。
その場で進捗状況を報告したり進め方のアドバイスを貰えるので有益な場となっています。
また、リモートだとどうしても雑談などが減ってしまうので、関係性を築くのが難しいですが、毎朝コミュニケーションを取ることで相談しやすい関係性を築けていると感じます。

エンジニアの仕事はデザイナー、ディレクターなど様々な方と一緒に仕事を進めますよね。
その中で自分から積極的にコミュニケーションを取り、相談しやすい関係性を築いていきましょう。

おわりに

エンジニアの作業は開発だけではない。そんなことを実感する一年でした。
チームメンバーとこまめにコミュニケーションをとり認識のズレをなくしていくことが大事だと改めて思います。
少しでも参考になれば幸いです。

この記事が気に入ったらサポートをしてみませんか?