エンジニア10の原則 - 株式会社プレイシンク
プレイシンクのエンジニア10原則
プレイシンクのエンジニアが大事にしている価値観に共感してくれる人がいたらぜひ仲間になってください
👨🏻💻 1. プログラムは他者のために書く
現時点で他者に理解できないコードは、後に自分が見ても理解が困難になっていく
👨🏻💻 2. テストを備えた汚いコードは、テストの無い美しいコードに勝る
テストコードがあれば「より美しく」リファクタリングし続けることができる。テストコードのないコードがそれ以上美しくなることは難しい
👨🏻💻 3. 計測をせずに性能の話をしない
チューニングにしても、スペックアップにしても、計測してボトルネックを把握することが第一
👨🏻💻 4. 己を疑う
技術の変化により、過去の常識が常識でなくなることが発生する。扱っている技術の新バージョンが出た際は「自分の知識は旧バージョンの知識」という自覚を持ち、アップデートする
👨🏻💻 5. 公式のドキュメントを確認する
検索で出てくるWebサイト・ブログ記事には誤りが含まれることが少なくない(特にスクール系)
👨🏻💻 6. あらゆる問題を解決する最強の技術は無い
さまざまな技術を学び、ケースバイケースで適用させていく
👨🏻💻 7. ボーイスカウト・ルール(来た時よりも美しく)を守る
理想的な状態を目指そうとすると、理想が遠すぎてかえって改善されないことも多い。「自分が受け取った時より美しい状態」を目指す
👨🏻💻 8. メンテナンス性>セキュリティ要件>性能要件の優先順位
「確実なボトルネック」であることが計測された場合を除けばメンテナンス性とセキュリティを重視する。メンテナンス性が低いとセキュリティ要件の変化に追随が難しくなる、よってメンテナンス性が最重要
👨🏻💻 9. テストしやすいように設計する
ソフトウェアの変更において最もコストがかかる部分はテストである。「後の変更に耐えうる設計」とは、テストにかかるコストを下げられる設計を指す
👨🏻💻 10.安定させるために変化させ続ける
「変更を加えなければ大丈夫」神話はすでに失われている。ソフトウェアはそれ単体で動くものではなく、ソフトウェアを取り巻くものは常に変化し続けている