7/15 新人教育
今の常駐先で働いて1年半が経ちます。今の常駐先は自分が新卒から22年間在籍していたプロジェクトとは進め方が全く異なります
・設計書書かない。ホワイトボードですべて議論。写真撮影⇒web上にアップし、設計書。
・コードがすべて
・テスト書作らない⇒期待値がわからないってケースが多い。そもそも動けばよい。
・コーディングルール存在しない
・アジャイル形式
製品のプロトタイプを作っているから、上記のようなことなんですが、ミッションクリティカルなプロジェクトで経験してきた自分からしたら、考えられないです。そんな中、7月から新人が入ってきました。まずはコードだけ書かせました。そして数回レビューしました。新人のコードレビューで指摘した内容は下記。
・変数名はアッパーキャメルケース
・インテンドは揃える
・enum値の接頭語は揃える
・参照のみの変数にはconstつける
・if文ネストは深くならないようにロジックを組む
・関数は100step以内
・変数スコープは小さくする
・ビルド警告の削除
・重複なロジックは組まない
・関数は自作を避け、標準ライブラリ(GNU/boost等)にあるか調べて、無い場合に作成する
・テストコードを組む。
・テストコードの自動化を考える
・パラメータチェックは外だし。パラメータが追加となるごとにロジックが増える構造は避ける
新人にはファームウェア作成担当をしてもらうことにしました。ファームウェア担当の仕事内容
・リリースブランチからファームウェア作成し、1つのバイナリに纏める
・製品ブランチは3本あるので、ある製品で問題が発生したら、他製品ブランチにフィードバック
・リリースブランチで対策した問題点の管理
・リリーステストの実施。その結果から制限事項の整理
自分の新人の頃を思い出しました。自分もできてなかったからな。。これから数か月の教育係になります。さて、今日の家計簿ですが、
合計:0円
応援よろしくお願いします。 → 節約ブログランキング
・設計書書かない。ホワイトボードですべて議論。写真撮影⇒web上にアップし、設計書。
・コードがすべて
・テスト書作らない⇒期待値がわからないってケースが多い。そもそも動けばよい。
・コーディングルール存在しない
・アジャイル形式
製品のプロトタイプを作っているから、上記のようなことなんですが、ミッションクリティカルなプロジェクトで経験してきた自分からしたら、考えられないです。そんな中、7月から新人が入ってきました。まずはコードだけ書かせました。そして数回レビューしました。新人のコードレビューで指摘した内容は下記。
・変数名はアッパーキャメルケース
・インテンドは揃える
・enum値の接頭語は揃える
・参照のみの変数にはconstつける
・if文ネストは深くならないようにロジックを組む
・関数は100step以内
・変数スコープは小さくする
・ビルド警告の削除
・重複なロジックは組まない
・関数は自作を避け、標準ライブラリ(GNU/boost等)にあるか調べて、無い場合に作成する
・テストコードを組む。
・テストコードの自動化を考える
・パラメータチェックは外だし。パラメータが追加となるごとにロジックが増える構造は避ける
新人にはファームウェア作成担当をしてもらうことにしました。ファームウェア担当の仕事内容
・リリースブランチからファームウェア作成し、1つのバイナリに纏める
・製品ブランチは3本あるので、ある製品で問題が発生したら、他製品ブランチにフィードバック
・リリースブランチで対策した問題点の管理
・リリーステストの実施。その結果から制限事項の整理
自分の新人の頃を思い出しました。自分もできてなかったからな。。これから数か月の教育係になります。さて、今日の家計簿ですが、
合計:0円
応援よろしくお願いします。 → 節約ブログランキング
