プログラマからの転職を考える際に気にしておくこと
転職の話の前に少し触れておきますが、私個人的には所謂プログラマの35歳定年説とよばれるものについては、あまり気にしなくて良いというスタンスです。
ただし、当然ですがスペシャリストとして食っていくのであれば35歳以降も強い志を持って変化に対応していくことが前提です。
その後も結果を残していくプログラマは新しいものに目がなくてガンガン新しいものを勝手に取り込んでいくタイプだと思います。
その辺の意識が低いと、上記定年説にあるようにだんだんついていけなくなって上記定年説の流れにのっていることが多いです。
また、ご自身がプログラマとして35歳以降もやっていく自信があったとしても、今いる会社がプログラマに高い給料を払ってくれるかは別の話ですので注意が必要です。
日本だとまだまだ単価安いですよね。この記事では、末端プログラマからシステムエンジニア方面に舵を切る方向けの情報になります。
プログラマとしてそこまでの自信はない!でも開発経験を生かしてステップアップしたい!
まず、意識や技術力の高いプログラマの皆様、すみません。
ここで参考にしていただきたい層は、ある程度実務でプログラミング経験を積み、担当領域ではそれなりの自信があるものの、技術トレンドには乗れておらず、スタートアップやフリーランスでバリバリやっていくほどの自信はないが、システムエンジニアとしてキャリアアップのための転職がしたい・・・・つまり昔の私です。
余談ですが、上記にあてはまっていた、過去の私の状況(初回転職前)を少しご紹介します。
- 総支給16万
- 賞与なし(よくあるパターンで求人票には賞与支給アリと記載)
- 執務室のエアコンは禁止(夏場は地獄)
- 残業代は出ないけど、残業いっぱいで日曜夜にも呼び出されるよ!
- その他もろもろ・・・(書けない)
田舎だったのでなんとか生活できていましたが、この状況で結婚したくないという思いや不安が強くなり、最初の転職活動に踏み切ったのでした。(面接でこんなネガティブな内容は話しませんが・・・)
話を戻しまして、是非検討いただきたいなと思う方をもう少しざっくり言うと、経験とともに年齢も上がってきたが、客先のプロジェクトに合わせたプログラミング経験だけで、この先のキャリアが不安・・ある程度規模の大きな会社で落ち着いて働きたい!みたいな感じでしょうか。
この前提にあてはまる方には、是非事業会社のシステム開発部門を検討していただきたいと思います。
もしかすると、現職でこういった会社さんから仕事を請けている方もいるかもしれませんね。
事業会社のシステム開発部門は、大手であっても内定可能性はある
まず、経験も踏まえてお勧めするのは、所謂SIerではなく、自社の主事業(IT外)に関するソフトウェアを持っている事業会社のシステム開発部門です。
事業内容についてはなんでもよいので、ご自身の興味があるものから選んでいただければ良いです。(インフラ、メーカー、なんでも)
事業内容をIT外、としている理由ですが、例えばSaaSベンダー等になってしまうと、事業のコアとなる製品開発となりますので、当然求められるレベルも上がります。
尖ったスキルを持っていたり、次の次の転職で目指すのであればアリかもしれませんが、上記の前提条件の方だとちょっとハードルが高いかなと思います。
狙いたいのは、何かしらの主な事業があり、そこに関連したシステム開発を行っている会社、その中のシステム部門、というのがミソです。
自然にウェイウェイできるような性格である必要はありませんが、相手の目を見てきちんと対話できるコミュニケーション力は前提として必要です。(念のため)
転職先の募集要件確認ポイント(ざっくり)
細かい募集要項は会社によるので省きますが、最低限、主に見ていただきたいポイントは以下です。
- 業務内容において、自社の事業に関する業務支援ソフトウェア等の開発が含まれている
- 経験言語条件がマッチしている、あるいはストーリーでカバーできる
- 外部協力会社の管理等が業務内容に含まれている
業務内容において、自社の事業に関する業務支援ソフトウェア等の開発が含まれている
1については、上記の通り、あくまで事業会社の中における業務にかかるシステム開発等を行う部署であるかどうか、という点につながる要件になります。
社内用のシステムでも構いませんが、バックオフィス関連のシステムだと、SaaSに置き換えられていく可能性も高いので、できればコア事業に関する外向けシステム等である方がそのあたりのリスクは下がるかなと思います。
開発経験、活かしたいですよね。
経験言語条件がマッチしている、あるいはストーリーでカバーできる
改めて記載することでもないのですが、プログラマにおいては自身の経験がマッチする非常にわかりやすい指標ですよね。
ただ、そのまま求められているものと完全に同じ言語である必要はないです。
極端な例ですが、VBしかやったことがない!という場合でも、 C#、 Javaあたりの募集であれば、書類さえ通れば説明の仕方次第でなんとかなります。(当然、言語間の違いを事前に把握した上で、業務外で触ったことがあるよ、くらいの話ができる状態にしておく必要はあります)
WebであればJavaScriptに触っておけば、ある程度フロントエンド、バックエンドの両方についてストーリー作って話すこともできるのではないでしょうか。もし、バックエンドわからない・・・という場合には、せめてRDBとしてSQL Serverのフリーエディションくらい触っておくといいかなと。(PostgreでもMySQLでもなんでもいいです)
ストーリーは募集要項に記載されている内容によって考える必要はありますが、ここでお伝えしたかったのは、会社の規模が大きかったり、募集要項にピッタリあっていなくても怯む必要はないということです。
個人的には、使用言語の完全なマッチよりも、経験した技術を使ってどんなことをやってきたのか、また何ができるのかを俯瞰して語れるほうがポイントが高いです。
マッチできなかった部分については、理屈立ててその不足分を埋めることができるようストーリーを用意してカバーできれば、可能性は全然あります。
会社にもよりますが、言語や細かいフレームワーク指定の利用経験まで全部マッチする人しか採用しないでいると、全然人が採れません。
採用する側も必死なんです。多少のアンマッチくらいキャッチアップできますわ~くらいの自信をのぞかせたほうがよいです。
外部協力会社の管理等が業務内容に含まれている
採用する側からすると、事業会社のシステム開発の場合、外部の協力会社に丸投げして管理のみ、なども多く、どちらかというとコーディングをしてほしいというよりは、プログラマ経験を活かした自社のシステム開発を推進する、上流工程の人材を求めていることが多いです。
レビュー等を通しての管理を適宜行う必要はあるため、ある程度自身のスキルとのギャップを理解した上でキャッチアップ可能なことを理路整然と語るだけで通る可能性が上がります。(人手はどこも不足しています・・・・)
「実際に手を動かしてシステムを作り上げた経験があり、プロジェクトを推進する上での関係者間のコミュニケーションができ、開発における下位者やベンダーの管理が可能である。」
最低限ここを満たせると思わせることができれば、ある程度大きな会社でも通る可能性はあります。
あるあるですが、新卒で同様の会社、部門に入った場合には、最初から実際のコーディング等は外に丸投げしていたりする場合もあり、スキルが低いまま、名ばかりSEとして工数、進捗管理だけ行うケースもあります。
それでうまく回っていれば良いかもしれませんが、ベンダーロックにつながったり外部開発者の言うがままになってしまうケースもあるため、完全な内製まではいかなくともきちんと内部に開発の中身がわかる方に入ってもらいたい!!、という会社は結構あるんですね。
スペシャリスト方面にいかないのであれば、今後のキャリアにおいてベンダー管理経験は重要になります。できるだけ若い内に経験を積むためにも、是非業務内容に含まれているところを狙いたいです。
外部ベンダーの管理については経験がない場合もあると思います。嘘をつくのは良くないですが、下位者なり他者への指示、誰かと協力してPJを遂行した経験を膨らませてストーリーにして、ベンダー管理に活かすことができるように語るといいですね。
社内SEは基本的には別職種
一つ注意点について。
この記事を見ている方は、すでに求人サイトで職種指定して転職先さがしを始めている方が多いと思います。
そんな中で、社内SEもいいなーと思う方もいるかもしれません。
客先のPJであっちこっちいくより、自社で腰を据えてシステム担当者として尽くしたい!とか考えますよね。
ただし、今回の記事の対象としているのはプログラマの方です。
残念ながら社内SEとして募集をかけている求人において要求される経験は、おそらくご自身の経験内容とは異なる場合が多いかと思います。
インフラ管理、ネットワーク、サポートデスク、おじいちゃん社員のクレーム対応、ActiveDirectory、etc...もちろんご自身の強みとマッチするのであればチャレンジいただいて良いのですが、同じSEならいけるだろう、のような認識は持たない方が吉です。
たまに、社内SEとして募集をかけつつ、内容は自社製品の内製開発を含めている場合もありますので、社内SEの募集も内容確認いただいた上でチャレンジすること自体はありだと思います。
第二新卒くらいなら別かもしれませんが、転職者に求められるのは即戦力です。システム開発者としてのIT知見、経験から社内SE業務のキャッチアップに自信があったとしても、採用側としては社内SEが欲しければ社内SE経験者を選びたいところです。
転職後のキャリアについて
この記事で面接の中身にまでは詳しく触れませんが、プログラムが書けるのはあくまで前提、必要条件であって、必要十分条件ではありません。
面接時には、プログラマしかわからないような話ではなく、ステークホルダーを巻き込んでのPJ成功経験等、少しでもハイレベルな内容を意識する必要があります。
仮に事業会社のIT部隊として採用された場合、プログラマというよりはゼネラリスト方面のキャリアパスが主となるかと思います。(スペシャリストでいくんだ、という方はそもそもこの記事をここまで読んでいただいていないと思いますが)
当然コーディング要員ではなく、当該システムのアーキテクチャの理解、フロントエンド、バックエンド全体の知識向上、外部ベンダの管理に係る経験、インフラやネットワークに関する知識、また主事業に係るビジネス領域の知識など、転職後に身につく内容も広い範囲となってこれまでと変わってくると思います。
プログラマだと上記が身につかないという意味ではないですよ。
転職後はそういった経験を随時職務経歴書上にアップデートすることで、自分自身を俯瞰して確認できるようにしておくことが大事です。
大きな事業会社に転職できたとしても、そこであなたのキャリアが完結する保証はありません。
再度の転職を考えていないとしても、自身の軌跡を確認できるように、身に着けてきたスキル、経験は、しっかり棚卸しておきましょう。