プログラマーの1日というと、どんな仕事内容を想像しますか?
- 朝から晩までコーディング(開発)してるイメージ?
- ガジェットを使いこなして打合せするイメージ?
- クリアボードにチャート図とか書いてるイメージ?
以前、プログラマーの具体的な仕事内容を紹介する記事をまとめました。
今回は、プログラマーの具体的な仕事内容について、1日の中でどのように過ごしてどのように進めているのかを「プログラマーのある1日」としてご紹介します。
ちなみに、ご紹介するのはWEBプログラマー(今はソフトウェアプログラマーでもあります)である、僕自身の1日です(笑)
これからプログラマーやエンジニアを目指す人はご参考にしてみてください。
プログラマーの1日
9:00 会社に出社
朝9時に出社します。
うちの会社はフレックスタイム制を導入しています。
1日の勤務時間8時間のうち、コアタイム(午前10時~午後5時)の間に会社にいれば、あとの時間は自分で自由に決めることができます。
僕はだいたい午前9時に出社して、午後6時に退社することが多いです。人によっては午前10時に出社して午後7時まで働く人もいるし、午前8時に出社して午後5時にキッカリに帰る人もいます。
会社に出社したら、コーヒーを飲みながらネットでIT関連のニュースや情報を見たり、今日のスケジュール(タスク)の確認をします。それをだいたい9時半くらいまで行います。
9:30 設計書のレビュー
この日は、今進めている案件のチーム内による設計書のレビューをしました。
レビューとは、ある人が作成したプログラムの設計書を複数人で読み合わせして、内容の確認を行っていく作業です。
- 上流工程で決められた仕様を網羅しているか?
- 処理のロジックに問題はないか?
- 重大なエラーにつながる箇所はないか?
- プログラムが効率よく動作するような設計か?
- プログラミング工程で止まることなく作業が進むか?
- プログラミングで使用する言語で実現できるか?
といったようなことを確認していきます。
複数人で行うことで、設計書を作成した人が気づかないようなミス・漏れなどを発見できることもあるし、より効率的な処理の流れが見つかる場合もあります。
プログラミングの工程で出戻り(設計のやり直し)を発生させないためにも、設計書のレビューはプログラマーにとって重要な作業です。
12:00 昼食は近くの定食屋
設計書のレビューを12時までやった後、12時からは昼食の時間です。
僕が働いている場所はオフィス街なのですが、近くに飲食店が結構あります。オフィス街の人をターゲットにした飲食店ですね。
この日はお気に入りの定食屋さんで昼食です。
ひとりで食べることもあるし、同僚と食べにくることもあります。
昼はゆっくり休みたいので、上司と来ることはめったにないですね(笑)
最近は、炭水化物をとりすぎると眠くなるという情報を信じて、炭水化物を少なめにしています。おかげて少しダイエットもできているかもしれませんね。
13:00 プログラミング作業
お昼休憩から戻って、この日は13時からプログラミング作業です。
自分が担当している部分のプログラミングをガシガシ進めます。
今僕は3つの案件を同時進行しているのですが、この日プログラミングしたのはWEBサービスの一部の機能です。
プログラミング言語はRubyを使っています。Rubyは、初心者だった僕がプログラミングスクールで一番最初に習った言語でもあります。その後、仕事を通じてPHP、Perl、Java、Javascript、C言語、C++など、さまざまなプログラミング言語に携わってきました。
僕はプロフィールでも書いたとおり、30歳を前に介護士をやめて初心者の状態でプログラマーの世界に飛び込みました。
当サイトで何度も言っているとおり、プログラマーは誰でもなれます。プログラミングできるかどうかは、プログラミング言語を覚えるかどうかです。
ですが、僕が初めてのプログラマーの世界に飛び込んで、とまどうことなく仕事ができたのは、間違いなくプログラミングスクールで学んだおかげです。プログラミングスクールで仕事に近い形で学べたことで、実際に働きだしてからもスムーズに入れたし、いろんな開発案件も経験することができました。
ちなみに、うちの職場はわりとアットホームな雰囲気で、プログラミング作業中も他の人と全然別の話(たとえば昨日のテレビの話)をしたり、コーヒーを飲んで少し休憩したりと、自由な社風です。
もちろん、仕事の真剣なやり取りもありますよ。
16:00 他チーム開発のスマホアプリの動作確認
この日は16時から、他のチームが進めている開発案件の「スマホアプリ」の動作チェックを行いました。
僕は今、複数チームをまとめるマネージャーでもあるので(実際にはプログラミングもしているのでプレーイングマネージャーといったところでしょうか)、自分が直接作業として携わってないチームの開発物の確認もします。
開発に関わってないメンバーが確認することで、まったく別の視点から製品のチェックをする効果もあります。
開発のチーム内では当たり前のことが、一般ユーザーが使用した時に違和感に感じたり、使いにくいと感じることがよくあるからです。
そういった意味でもうちの会社では、必ず製品チェック(製品レビュー)には、他チームやマネージャーを含めてレビューを実施します。
開発中のアプリやサービスをいじりながらアレコレ議論するのは結構楽しい作業ですよ。自分がレビューされる側だとちょっと緊張したりもしますけど(笑)
18:30 退社
18時過ぎまで製品レビューをして、この日は18時半に会社を出ました。
その後は、お気に入りの喫茶店に寄って1時間くらい本を読んでから20時くらいに帰宅しました。
退社する時間が遅くないので、ある日はジムに寄って汗を流して帰ったり、ある日は直接帰って家族との時間をゆっくり過ごしたりと、仕事の後もなかなか充実した夜を過ごしています。
看護士だった頃とは比べ物にならないほどの余裕のあるスケジュールです。。。
プログラマーの1日のまとめ
特にそれほど忙しくない時は、大体この日のようなスケジュールで1日の仕事を進めています。
もちろん仕事の納期が重なって忙しくなったり、急なトラブル対応で残業することもあります。帰りが夜中の0時を過ぎることもありました。
ですが、そこまで極端な残業は、僕がプログラマーとして転職して6年経って1,2回しかありません。
もちろん会社によっては常に忙しい会社・忙しい部署もあるようです。特に大手IT企業は残業が普通になって、残業代で給料が潤っているような状況もあるようです。
ですが、最近のIT企業はそこまで極端な仕事環境ではありません。特にWEBを扱うWEBプログラマー・WEBエンジニア、ベンチャー企業などは、働く時は働く・遊ぶ時は遊ぶが徹底していて、メリハリがありダラダラ残業するイメージはありません。
このあたりの変化も、最近のプログラマーが高収入・高待遇と言われる部分なのでしょう。
会社によっても1日のスケジュールは違うと思いますが、あるプログラマーの1日が参考になったでしょうか?