[[ssacontents]] * ソフトウエアエンジニアの資質 [#g857df46] - プログラミングに向いている人と向かない人がいる -- 高学歴な人がプログラミング能力が高いということはないらしい - 好奇心、探究心に旺盛な人が向いている - もの作りが好きな人。プラモデル、工作、メカいじりなどが好きな人が向いている。 - 人とのコミュニケーションが苦手な人は、孤立しやすいので要注意 - スキー、オートバイなどの趣味を持つ人が比較的多いようだ。(理由は不明) * 常に心がけたいこと [#u0596ddb] - 学ぶ気持ちを大切にする -- 新しい技術を積極的に学ぶ -- 他人の書いたプログラムから学ぶ -- 過去に書いた自分のプログラムから学ぶ(ダメなところを) - 古い技術に固執しない -- 過去にベストだったものが、いまもベストだとは限らない --- 今ベストなものも将来はそうでなくなる可能性がある --- 古い技術は常に見直す必要がある - 新しい技術のリスクと効果を適切に判断しよう -- リスクを過剰に評価しない --- 知識の無さをリスクのせいにしていないか -- 枯れていない技術を仕事で使うには細心の注意を払おう --- あまり使われいない技術、ライブラリには潜在的な問題を抱えている場合がある --- プロトタイピングを行い、きちんと評価してから使おう - こだわりをすてよう -- 職人気質はこだわりの塊ではない。本当の職人は、「こだわらない事」にこだわる。 -- こだわりは思考を停止させる。何事も疑って考える思考が大事。 -- 柔軟な思考こそエンジニアの最大の武器となる。凝り固まった思考を捨てよう。 - 勇気を持とう -- 未知に対する不安、恐れをなくそう。勇気を持って未知の領域に挑もう。 -- 失敗を恐れない。失敗した時にフォローできるよう準備はしておこう。 -- 無謀、無計画は勇気ではない。「自分にはできません」と言う勇気も必要。 - プライドと責任を持とう -- ソースコードに署名しよう。責任の所在を明確にする。 -- 不具合を指摘されたら真摯に対応し、責任をもって修正しよう。 -- 常に他人に見られる事を意識してプログラムを書こう。 - 目的と手段を正しく認識しよう -- 仕事でプログラムを書く以上、成果物は正しく動作するプログラムだというこを忘れないようにしよう --- どんなに奇麗にかかれたプログラムでも、正しく動作なければ意味が無い。 --- 仕事でプログラムを書く以上、つねに理想論と現実論のトレードオフを考えなければならない。 --- 設計、開発手法、コーディングルールは手段であって、目的ではないことを意識しよう。 --- 妥協を余儀なくされた場合、後にリファクタリングを行おう。 ** 以下のキーワードが出てきたら要注意 [#w72148e5] *** 〜であるべきだ、〜でなければなならい [#t3421b61] * エンジニアをやめる時 [#lbb0d7d9] - 未知な物への興味がなくなったとき - プログラミングが好きではなくなった時 - 自分が世界でいちばん優秀なエンジニアだと思った時