酔っ払いの投稿:シニアエンジニアとして学んだこと(2021年)
概要
- r/ExperiencedDevsで話題となった、10年間のエンジニア経験から得た本音リストの日本語訳
- 転職、技術スタック、マネージャー、ドキュメント作成など幅広いテーマ
- エンジニアとしての成長やキャリア形成に関する率直な意見
- 業界の課題や人間関係、働き方への洞察
- 飲酒による本音トークならではのユーモアと実用的なアドバイス
10年間のエンジニア経験から学んだこと
- キャリアアップの最良の方法は、会社を変えること
- 技術スタック自体に過度なこだわりは不要。どの分野にも10〜20の基本原則が存在
- 仕事に不満があるなら転職活動を。満足度の低い職場は早めに見切りをつける
- 職場での友情は必須ではない。友人ができなくても幸せな場合も多い
- マネージャーとの正直なコミュニケーションが大切。解雇されても2週間で新しい職を見つけられる自信
- オンコールで四半期に2回以上深夜対応があるなら、仕組みが破綻している証拠
- 良いマネージャーと良いエンジニアの資質には多くの共通点
- 技術やプログラミングへの憧れは最初だけ。今は冷静な視点
- 良いコードは新人が理解できるコード。最良のコードは「書かない」こと
- 最も過小評価されているスキルはドキュメント作成。良いドキュメントの書き方は高額でも学びたい
- 提案書の作成能力も重要なスキル
- 技術論争(vim vs emacs等)はほぼ無意味。ただし、動的言語への評価は年齢とともに上昇
- 自分が一番賢いと感じたら、その場を去るタイミング
- フルスタックWebエンジニアの給与は低すぎる。多岐にわたる知識が必要であるべき
- インターンの採用は大賛成。新鮮な視点とエネルギー
- ヒーローには会わない方がいい。憧れの人も実際はみんなと同じ
- 技術スタックは「適材適所」。迷ったらJavaを選べ。万能だが微妙
- Lispこそ最高の言語。学ぶべき
- 初心者が稼げる言語はSQL。他の言語を知らなくても高収入が狙える
- テストは重要だがTDDは宗教的
- 公務員エンジニアは若手には不向き。技術の古さと年齢層の高さ
- リクルーターは玉石混交。良い担当者はキャリアの助けになる
- ストックオプションは人数100人以上の会社でないと価値が出にくい
- リモートワークは最高だが、ホワイトボードが使えないのは不便
- FAANG出身者でも万能ではない。採用・不採用の経験から
- 自己評価と報酬は比例しない。資本主義と自己価値の切り離し
- マネージャーの権力は意外と小さい。解雇の決定権も限定的
- 肩書きは重要ではない。実績が全て
- キャリア初期は昇進、後半は降格で給与アップの余地を作るのも手
- **401k(確定拠出年金)**は最大限活用
- 親切であることはキャリアにも人生にもプラス
- 新人やインターンから学ぶ姿勢を忘れない
- 自己投資(講座・書籍・カンファレンス)は価値あり
- Webエンジニアの待遇改善を再度強調
- 健康投資(椅子・キーボード等)は惜しまない
- 優秀な上司や同僚から多くを学ぶこと
- 人間関係の失敗も自己成長の糧
- エンジニアの醍醐味は、思考法が似た人と出会えること
- 女性・黒人エンジニアの少なさは業界の課題。変化の必要性を痛感
- 嫌いだけど勧める技術は本当に有用なもの
- gitのコマンドライン派。GUIツールは不要
- データ分析特有の苦労(例:pandasへの愚痴)
- セミテクニカルなアナリストの存在がチームを強くする
- ダークモードは便利だが、強制されるならライトモード派
- セキュリティは奥が深い。自分はまだまだ未熟
- ベストプラクティスを知ることが良いエンジニア、破る判断力がシニアエンジニア
- 責任追及文化の職場は離れるべき
- 「本当の自分」を持ち込む職場文化への疑問
- 飲み会は好きだが、家族や友人との時間を大切に
- リーダーシップの真価は、部下のミスをかばう姿勢
- 意見の対立を説明・調整できるリーダーを目指す
- サイドプロジェクトは好きな人だけやればいい
- アルゴリズムやデータ構造の面接偏重への違和感
- DevOpsエンジニアへのリスペクト。高給も納得
- 好きな仕事より嫌いじゃない仕事を選ぶ重要性
- プロダクトに近い仕事ほど評価されやすい
- Linux経験は後々役立つ
- **曖昧なバズワード(例:ビッグデータ)**に警戒
- シリコンバレー以外にも良い仕事は存在
- 嫌いな言語も使い込めば評価が変わる。C#の例
- 関数型言語の本質は関数が一級市民であること
- どんなに優れた言語も、使われなければ意味がない
- 言語の習得よりエコシステムの理解が難しい
- ペアプログラミングの有用性