新進気鋭
初日
約 6 か月前に大学を卒業し、コンピューター サイエンスの学士号を取得しました。いくつか成果も上げました。Microsoft Imagine Cup の優勝チームに所属し、Windows ストアで公開したアプリが 40 万ダウンロードを達成しました。もちろんこれがすべてではありません。
マイクロソフトから採用通知を受け取ったときは、世界最大のソフトウェア企業の一員になれることに胸が高鳴りました。自分の成果や経験を考えれば、目の前にどのような課題が突きつけられても対処できるような気がしていました。
なんて世間知らずだったのでしょう。
プログラマであればだれもが習得に時間がかかることは理解しています。プログラマは毎日不慣れなことや、困難なことに直面することが多い職業です。知識を習得し、応用する戦いが絶えることなく続きます。マイクロソフトで経験した習得の難しさは、過去には経験したことのない難しさでした。これほど大規模で円熟したコード ベースはこれまで取り組んだことも、見たこともありませんでした。このコード ベースには、大量の情報が受け継がれ、秘められています。
言い方を変えると、入社 1 週間前には製品レベルの上質なコードを毎日に 2,000 行近くコーディングしていました。しかし、入社後の最初の 1 週間にコーディングしたのはたった 10 行でした。コンパイルもしていません。開発環境を整えるだけでも 2 ~ 3 週間を要しました。必要なソフトウェアをすべてセットアップし、ソース コードをすべて登録し、そしてもちろんアクセス許可も全部設定しました。アクセス許可の量はあまりにも膨大でした。
マイクロソフトで開発や管理を行っている種類のソフトウェアを考えると、企業ソフトウェア開発に初めて携わるのがもっと楽になる方法があるかどうかはわかりません。
このような苦労を話すと、プロの世界に足を踏み入れようとする新人ソフトウェア エンジニアは悲観するかもしれません。ですが、私と一緒に仕事をしているマイクロソフトの同僚は全員、言葉では伝えきれないほど協力的です。どの職場もそうだと思いますが、共に働く人たちによって環境が決まります。そして私は自分の職場に大変満足しています。前向きな姿勢を維持する大切さはどれだけ強調しても足りません。プロジェクトとチームの両方に何か楽しみを得られることの大切さもそうです。1 日 8 時間以上の時間を週に 5 日間チームと共に過ごしていると (ときにはそれより長くなることもありますが)、チームは第 2 の家族になります。チームと上手くやっていくのは大切なことです。
このコラムでは、新人の開発者に何かしらのアドバイスや指針を示し、何かが読者の心に残ればと考えています。1 人の若手プログラマとして私が最も後悔したことは、インターンシップに参加しなかったことです。インターンシップは、給料が支払われるというだけではなく、またとない実社会の経験を得ることができます。ひと夏を使ってマイクロソフトのような企業でインターンとして働けば、正式なキャリアが始まらないうちから多くの教訓を学ぶことができるかもしれません。それも、ほとんど重圧がない中でです。
他にも選択肢はあります。たとえば、大きなオープン ソース プロジェクトに貢献することです。私と同じ衝撃を味わえるでしょう。自分が生まれる以前から存在し、これまでの人生で出会ったよりも多くの人が貢献しているコミュニティで、ソース コードについて議論するのです。それでも、大きなコード ベースを読むのに慣れることができ、新たなキャリアの初日に企業の門をくぐる際にはその自信が大いに役立ちます。
また、自分自身の期待と闘う覚悟も必要です。私にとって屈辱だったのは、1 日数千行のコードを書いていたのがわずか数行になってしまったことです。ときにはアプリケーションのコンパイルに半日も費やしてしまったこともあります。同じチームの同僚が自信たっぷりに作業を片っ端から終わらせているときは、特につらく感じました。ですが新人としてまったく普通のことです。恐れずに協力を求めてください。周りにいるだれもが新しい仲間の成功を願っていることを忘れないでください。同じチームの仲間たちは全員、新人がこれから経験することはすべて経験済みで、わからないことがあるのを理解しています。
私がマイクロソフトで働き始めたとき、地に足が着いて周りが見えるようになるまでに 3 ~ 6 か月はかかると言われました。初日にはそれが荒唐無稽な考えに聞こえました。それまで何かに順応するのにそれほどの時間を必要とした経験はありませんでした。マイクロソフトで働き始めてちょうど 7 か月が経ちましたが、このちょっとしたアドバイスはまったく正しかったというのが結論です。新しいキャリアの課題を認めて受け入れるのが早いほど、小さなことを気にすることが少なくなり、仕事を楽しむことができるようになります。
Ryder Donahue* はマイクロソフトのソフトウェア開発エンジニアです。出身はハワイ諸島で、現在はワシントン州レドモンドで婚約者と猫の Marbles と一緒に暮らしています。*