SIer→社内エンジニア→リモートワーク、3つの職場を経て見えてきた、プログラマにとっての幸せな働き方

みなさん、こんにちは。
普段は「give IT a try」というブログを書いている、プログラマの伊藤淳一@jnchitoです。今回は縁あって、GeekOutでコラムを書かせてもらいます。

僕はプログラマとして働き始めてもうすぐ15年になります。最初に入った会社は大阪にあるSIerでした。そこで4年ほど働いた後、次は外資系企業の社内エンジニアとして働き始めました。社内エンジニアの仕事は5年ほど続け、それから株式会社ソニックガーデンへ転職して現在に至ります。

これまでに働いてきた3つの職場は三社三様です。それぞれの職場で良かったことやしんどかったことをあらためて見つめ直してみると、プログラマにとっての幸せな働き方が浮かび上がってきます。もちろん何を幸せと感じるかは人によって異なりますが、同じ「IT業界」といってもいろんな職場があることは知っておいても損はないでしょう。

また、幸せは突然空から降ってくるものではなく、自分でつかみ取るものです。このコラムの後半では、幸せをつかみ取るために必要な、継続的なインプットとアウトプットの重要性についても説明します。

僕の自宅です。今は兵庫県西脇市という田舎町に住んでます

SIer時代(2003年〜2007年 / 25歳〜29歳)

僕はもともとプログラマになるつもりはまったくなく、本当はプロミュージシャンになりたいと思っていました。大学は文系ですし、卒業後もしばらくバンドをやっていました。しかし、そのバンドも解散して、仕方なく就職したのが大阪のSIerです。社員数は確か200人前後だったと思います。

ちなみに、プログラマの仕事を選んだのは「バンドのホームページ作成」の延長で「パソコン関係の仕事なら、なんとなくやれそう」と思ったからです。

SIer時代の良かったこと(と、プログラミングへの目覚め)

当時を振り返って良かったな、楽しかったなと思える点は以下のとおりです。

  • プログラミング未経験の僕を中途入社で雇ってくれたこと
  • プロジェクトによっては技術的にすごく楽しいものがあったこと
  • 一部に「この人すごい!」と思える先輩エンジニアがいたこと

なんだかんだいっても、最初に入ったこのSIerは僕のプログラマ人生に大きな影響を及ぼしています。

もともとプログラマ志望だったわけでもないので、入社当初はそこまでやる気もなく、「与えられた仕事を淡々とこなして帰るだけ」でした。ですが、プログラミングの仕事にはパズルを解くような面白さや、プログラムが動いたときの快感があり、日が経つにつれ、だんだんと楽しさが増してきました。

SIer時代で一番大きなターニングポイントだったのは、Javaを使ったオブジェクト指向プログラミングとの出会いです。それまでやっていたVB(Visual Basic)プログラミングとは作りやすさや開発効率の良さが格段に違うことに感動し、「こんなにラクに楽しく作れる方法があるなら、オブジェクト指向プログラミングを追求するしかない!」と決心しました。

また、難しそうな英語のドキュメントを読みながら、僕にフレームワークの使い方やプログラミングのコツを教えてくれる先輩プログラマも、当時の僕にはすごくカッコ良く見えました。こうした経験があったからこそ、「最新の技術や英語を勉強することは、技術者にとって大きなメリットになる」と僕は身をもって理解することができたのです。

なによりこのSIerには、プログラミング未経験の僕に最初の第一歩を踏み出す機会をくれた(=IT業界に入れてくれた)ことを感謝しています。なぜなら、この業界に入れなかったら今の僕はまったく違う人生を歩んでいたと思うからです。

SIer時代のしんどかったこと

……と、持ち上げてから落とすのも何ですが、良い思い出もあれば悪い思い出もあります。というか、その方がたくさん出てきます(苦笑)

  • 技術的に楽しいプロジェクトがある一方で、技術的につまらないプロジェクトもたくさんあった
  • 「この人すごい!」と思えるエンジニアがいる一方で、やる気も向上心もないエンジニアも多く、一緒に働いていて張り合いがなかった
  • 渡されたPCの性能があまり良くなかった
  • 休日出勤や残業が多く、残業時間についてはいつも申請した半分程度しか承認されなかった
  • やむを得ない理由でも、遅刻・欠勤すると給与を減額された(有給休暇を使っても減額されるって、なんでやねん!)
  • 給料が安かった

まあ、どれも「ブラック企業あるある」な話ですね。

ちなみに、この会社に勤めている最中に僕は結婚し、長男が生まれました。今だからぶっちゃけますが、当時の給与は、

  • 毎日ほぼ終電、土日も最低どちらかは出勤で死にそうになりながら働いたときで手取り25万
  • 残業や休日出勤がほとんどない月で手取り17万

で、妻から「こんな給料じゃとても生活できない」と心の底から嘆かれたのを覚えています……😅

当時の僕と息子。この頃は生活が大変でした💧

外資系社内エンジニア時代(2007年〜2012年 / 29歳〜34歳)

独身の間はなんとかなっても、結婚してからはとても暮らしていけない。ということで、僕はSIerから転職しました。結婚して移り住んだ兵庫県西脇市にあった外資系の半導体工場でちょうど社内エンジニアを募集しており、なんとか採用してもらうことができました。

この会社はアメリカに本社があり、世界各地の従業員を合わせると1万人以上、僕が勤めていた工場も社員が1,000人以上いるかなり大きな企業でした。ただし、社員の大半は工場のシフト勤務者で、それを除いた日勤の社員数は僕のいた工場で200~300人だったと思います。

外資系社内エンジニア時代で良かったこと

外資系社内エンジニア時代で良かったことは以下のとおりです。

  • 明確な評価基準と評価制度があり、ジョブポジションが上がるとそれがきちんと給料に反映された
  • 外資系なので仕事をしながら英語の勉強ができた
  • 残業時間がかなり減り、休日出勤はゼロになった
  • 給料が格段に上がった

ご覧のとおり、待遇は比べようがないほど良くなりました。転職した直後には「この会社、こんな湯水のようにお金を使っちゃって大丈夫なの!?」と目を白黒させた記憶もあります。評価基準を明確にしたり、社員の給与や会社の設備に躊躇なくお金をつぎ込んだりしている点はさすが外資系、という感じでした。

年収が倍近く上がったので、SIer時代には考えたこともなかった「夢のマイホーム」も建てることができました🏠

大きな家が建てやすいのは田舎暮らしのメリットです

外資系社内エンジニア時代でしんどかったこと

さて、待遇が良くなったので、これで悩みはすべて解決!! ……というわけではありません。当時はこんな問題もあったりしました。

  • 情報システム部門は、コストセンター(お金を稼がない部署)と見なされる
  • 仕事を頑張っても、本業の業績(つまり半導体の売上げ)に直接貢献できる余地が少ない
  • 社内の開発業務はそこまでバリエーションが多いわけではないので、2~3年すると仕事がマンネリ化する

さらに、本業の業績もだんだんと悪化し、それに伴って待遇もこんなふうに悪化してきました。

  • 当初予定されていた開発用PCや開発ツール(VisualStudio等)のアップデートが、凍結されたままになった
  • 最後は米国本社から切り捨てられ、工場も操業停止になった😱 (僕の退職後の話です)

うーん、こうやって見るとなかなかシビアですね……。そうなんです。待遇が良いと言っても、それは本業の業績次第なんです。それに、情報システム部は会社の主役ではないので、お金が必要になっても対応が後回しにされます。

仕事がマンネリ化してきたうえに待遇も悪化し、「このままでは化石のような開発者になってしまう。これではいかん!」と、僕は2回目の転職を決意しました。

ソニックガーデン時代(2012年〜現在 / 34歳〜40歳)

僕が転職した当時のソニックガーデンは、社員が6人しかいない小さな会社でした(現在は30名前後が在籍)。しかし、当時から「納品のない受託開発」というユニークな開発スタイルで、すでに知る人ぞ知る会社になっていました。

また、社員の募集ページにも「プログラマを一生の仕事にする」と書いてあって、「最新技術に触れながらずっとコードを書き続けていたい」と考えていた僕にとっては、とても魅力的な会社に見えました。

さらに、ソニックガーデンはその当時から、今ほど一般的でなかったリモートワークもOKな会社でした。兵庫県西脇市という田舎町に住む僕にとっては、住む場所を変えずにプログラマの仕事を続けられる点も非常に魅力的でした。

ソニックガーデンの良いところ

ソニックガーデンの良いところを挙げてみます。

• 技術に対する姿勢
周りの同僚が全員「技術的にとんがったすごい人」で、きれいなコードを書くことが推奨されている。コードレビューの文化もしっかり根付いているので、社内でスパゲッティコードを見かけることが皆無
• 技術に対するオープンさ
オープンな技術(つまりOSS)をメインで使うので、社内で得られた技術や知見を社外でも活かしやすい。また、技術力で売っていく会社なので、最新の技術を試しやすく、会社も積極的に背中を押してくれる
• やりがい
自分の頑張りが会社の業績に直結する
• 待遇の良さ
高性能なPCや、仕事で使うデスクや椅子など、開発効率を上げるための道具は気前よく購入してもらえる。実業務に悪影響を及ぼさない範囲なら、副業をしても怒られない。年収は入社直後は少し下がったが、徐々に昇給して今は前職とほぼ同水準になった(副業の収入を合わせると前職を超えてるかも)
• リモートワークならではの利点
社内の仕組みがリモートワークに最適化されており、快適にリモートワークできる。これにより通勤時間がゼロになり、自分の時間が増えた。業務中にちょっと外出したりすることも可能なので、妻が忙しいときに子どもの習い事の送迎に行ったりすることもできる

というわけで、転職したら「技術者にとっては文句なし+リモートワークで日常生活も快適」という一挙両得な環境を手に入れることができました。

僕の自宅の仕事場です。毎日ここで仕事してます

ソニックガーデンのしんどいところ

在籍している会社についてこのトピックを書くのはなかなかハードルが高いですが、現職だけ何も書かないのは不公平なので、頑張って書きます(苦笑)

  • これまでの勤めてきた会社のなかでは、求められる技術レベルが一番高い(当たり前だけど)
  • 今でこそ、そこそこのスピードで開発できるようになったが、入社当時は自分のレベルが低すぎて四苦八苦した
  • 「毎週ミーティングを開いて、お客さんに開発の成果を見せる」というスタイルなので、まとまった長期間の休みが取りづらい(週刊誌連載を持つ漫画家のような感じかも)

最初の2つは僕個人の問題であり、技術力を売りにする会社で働いているんだから当然、っていう問題ですね。「しんどいんだけど、楽しい」「楽しいんだけど、しんどい」という感じです。

3つめの「休みが取りづらい問題」は現在改善に向けて試行錯誤中です。ソニックガーデンではここ最近チーム制度を取り入れて3~4人のチームでお互いに業務のサポートをしたり、問題の改善を進めたりするようにしています。なので、この問題についてもこれからチーム内で改善に向けた施策を考えていく予定です。

プログラマとして幸せな働き方を手に入れるために

さて、ここまで読んでくれた方はだいたいお分かりいただけたかと思いますが、僕は現在の職場で自分の理想に近い、幸せな働き方を手に入れることができました。

しかし、「あーなりたい、こーなりたい」と思っているだけでは状況は改善しません。自分の状況を改善するためにはそれなりの努力と工夫が必要です。

勉強はもちろん大事、でも自分からPRすることも忘れずに

たとえばSIer時代は技術書をたくさん読んだり、仕事の帰りに英会話教室に通ったりしていました。また、そうした活動を上司にときどき報告したりしていました。

つまり、「勉強+自己PR」ですね。自分の好きな技術ややりたいこと(僕の場合はオブジェクト指向プログラミング)を常日頃から上司に伝えておいたおかげで、そういった案件に参加させてもらうこともできたりしました。

もちろん、勉強の積み重ねは転職するときにも役立ちます。僕は外資系企業に転職しようとしたので、英会話の勉強がプラスに働いたのはもちろんのこと、たくさん技術書を読んで勉強していることをアピールできたおかげで、うまく転職することができました。あとで聞いた話では「業務経験的には求めるレベルをやや下回るが、これだけ勉強熱心ならこれから伸びそう」と面接時に評価されたらしいです。

評価基準や活動の場所を会社の外まで広げよう

また、自分のなかの評価基準を会社の外に置くことも僕は大事だと思っています。

外資系社内エンジニア時代は給与こそ良かったものの、「ここで得られた技術スキルは社外でも評価されるか?」と自問すると、少し怪しいレベルでした。なので、社内で使わない技術であっても世間の技術トレンドを追いかけたり、社外の勉強会に参加したりしていました。

そういえば技術ブログを書き始めたのもこの時期です。ソニックガーデンに転職するときは「伊藤さんはブログを書いていたので、会う前から人となりがよくわかった」と言われたりしました。やはりこのときも継続的なインプットとアウトプットが役立ったように思います。

周りの人はあなたが思っているほどあなたのことを見ていないし、あなたのことを気にしてもいない

インプット(つまり勉強)の重要性については多くのみなさんが理解していると思いますが、アウトプット(情報発信や自己PR)については重要だとわかっていてもなかなか行動に移せない人が多いのではないでしょうか。

ですが、周りの人はあなたが思っているほどあなたのことを見ていないし、あなたのことを気にしてもいません。

あなたがどれだけ頑張って勉強していても、あなたがどれだけ優秀な人でも、それを外に発信しなければ、周りの人はそれに気付いてくれないのです。継続的なアウトプットが大切な理由はそこにあります。

インプットとアウトプットの両輪をバランスよく回しましょう

まとめ

というわけで、このコラムでは僕が勤めてきた3つの会社の良かったところ・しんどかったところを書いてみました。全部ひっくるめて「こんな会社だったら幸せ!」という条件をまとめると次のようになるでしょうか。

  • 周囲に技術的にすごい人が多い
  • プロジェクトが技術的に面白い
  • 社内で得た技術スキルを社外でも活かしやすい
  • 技術の重要性を会社が理解してくれる
  • 給料が良い
  • 休日出勤や残業が少ない
  • PCや仕事道具を気前よく購入してくれる
  • 自分の頑張りが会社の業績に反映されやすい

むむ、こうやって条件だけを並べてみると、ちょっとわがままで贅沢を言いすぎているようにも見えますね……。もちろん、もしこれだけのことをやってくれる会社があるなら、自分自身も会社の期待にきちんと応えなくてはなりません。そのためには間違いなく、人並み以上の技術スキルを身につけておかなければならないでしょう。

自分の状況を改善するためには、継続的なインプットとアウトプットが重要だということも書きました。がむしゃらなインプットだけでなく、アウトプットもうまく併用しながら、周囲の人たちにあなたが持つスキルや、あなたの頑張りに気付いてもらいましょう。その方がきっと、幸せな働き方により近づけるはずです。

このようにいろいろ書いてきましたが、今回ここで書いた内容はあくまで僕個人の経験と感想に基づくものであり、すべてのプログラマに当てはまるとは限りません。ですが、みなさんが今後のキャリアを考えるうえで少しでも参考になる部分がこのコラムのなかに見つかれば幸いです。

最後にお知らせ、ブログを書き続けていたら本ができました

僕はかれこれ10年近くブログやQiitaでコツコツ技術記事を書き続けています。すると、ある日突然「Rubyの入門書を書きませんか?」という話が舞い込んできました。最初はとてもビックリしましたが、これも継続的なアウトプットのおかげかなーと考えています。

というわけで、2017年11月25日に僕が執筆した「プロを目指す人のためのRuby入門」という本が発売されました。これは「他の言語での開発経験があり、これからRubyを始めたい人」や「Rubyプログラミングの経験はある程度あるものの、まだまだ自信がない人」に向けて、Rubyの言語仕様や開発の現場で役立つ知識を詳しく、ていねいに解説した技術書です。Rubyプログラミングに興味のある方は一度手にとっていただけると嬉しいです。よろしくお願いします😄

gihyo.jp

執筆者プロフィール

伊藤淳一(いとう・じゅんいち、jnchito

名前

1977年生まれ。大阪府豊中市出身、兵庫県西脇市在住。学生時代はミュージシャンを志し、就職もせずにバンド活動を続けていたが、ひょんなきっかけでIT業界に就職。SIer、社内SEを経て、2012年から株式会社ソニックガーデンでRubyプログラマとしてのキャリアをスタート。ブログQiitaなどで公開したプログラミング関連の記事多数。説明のわかりやすさには定評がある。
訳書(電子書籍)に「Everyday Rails - RSpecによるRailsテスト入門」(Aaron Sumner 著、Leanpub)、近著に『プロを目指す人のためのRuby入門(技術評論社)がある。