最近、Knowledge(社内用Qiita)ばかり更新してたので、久しぶりのQiita投稿です。
結局今年もポエムを書くことにしました。
誰にむけて書いた記事か
G'sにいると、起業勢or転職勢が多く、私自身も「辞めない」という選択肢に対してこれでいいのか悩みがちだったので、そういう人への支えになるといいなと思い記事を書きます。身内向けのポエムですみません。
(私自身の話で言うと、卒業から約1年後に転職することになるのですが...)
私自身の説明
G'sAcademyTokyoの週末コース8期生(2017年7月末入学〜2018年2月上旬卒業)です。
もう少しで卒業してから丸1年が経過します。
以前の会社には12年弱勤めて、以下のような業務をしていました。
会社にいた中盤以降は、自分の担当範囲と呼べることがなくなっていたので、特許調べたりとか特定業務の六法調べたりとか、アーキテクトの調査してみたりとか、社内に先達がいない仕事をこなしていた思います...。
・公共インフラシステムの渉外一式
・公共インフラシステムのシステム移行周り一式
・移行後の保守が落ち着くまで一式
・主に特定部門の新入社員教育周り一式(時々、委託先ベンダーへの教育も)
スキル的には結構貧弱で、基本情報とITIL基礎とPMPに受かったことがあるぐらい。
あとは移行をやってたのでRDBMSはOracleのBronzeレベルの知識がある程度です。
G'sに入るまでは、ソフトウエアエンジニアとしてのスキルはゼロでした。
私がG'sから得たもの
私は現役中にiOSネイティブ開発コースを選択したので、途中からPHPとかやってないんですけど、だいたい現役〜卒業後半年の間に得たことはこんなものでした。
1.JavaScript開発の基礎がわかった
2.Swift(iOS)開発の基礎がわかった
3.サーバレスアーキテクトが運用めっちゃ楽!という実感を得ることができた
4.git操作の基礎がわかった
5.(卒業後の受講)データサイエンティストBootCampを通して機械学習や統計の基礎がわかった
6.スタートアップ界隈の価値観やリアルな成功談/失敗談が聞けるようになった
7.G'sのコミュニティを通じて、ソーシャル・キャピタル(水平的な信頼関係)を構築する重要さを実感した
8.ポートフォリオをつける価値がわかった
9.LTで喋ってみる経験と度胸がついた
今は、某メンターが主催している毎週金曜日の徹夜合宿で、OSS開発/TDD開発の基礎とNuxt.JS開発の基礎を学んでいる最中です。これが終わったらソフトウエア開発に関する新規スキルの習得は一旦落ち着かせて、英語と思考の整理や言語化、ビジュアライズといったビジネス側のスキルに戻そうと思っています。
得たことの活かし方(私の場合)
私自身がG'sにもともと入ったきっかけは、2つありました。
1.社内アイデアソンで1位になれなかったけど、絶対自分で価値があると信じていたアプリを実現したかった。
2.トラディッショナルすぎる今の会社自体のあり方を、今のトレンドに馴染むように変えたかった。
まだまだ道半ばではありますが、いずれも1回目のローンチが完了するところまではこぎつけることができました。
特に2.については、会社の中で同じ思いを抱いていた人がマネジメント層やエンジニア層など色々なクラスタにいたこともあって、ベースとなる取り組みが平行稼働していたところに、うまく潮流として乗っかることができました。
(この数年ですでに開催されていた取り組み(ただし、公開して支障ないものに限定))
・Gitの導入(脱SVN)
・サーバレスアーキテクトの導入によるPoCのサイクル向上と運用コストの削減
・AI+データサイエンス勉強会
・ノンエンジニア向けのロースキルでできるハッカソンと社内ソーシャルキャピタルの育成 ←New!
(ハッカソンについてはベネッセさんに取材していただきましたので、こちら①、②を見てください)
会社はしばらく大丈夫、という安心感を得ることもあって、数年前から自分が抱えていた課題にチャレンジしようと転職することになりましたが、G'sで得たことを会社に還元することができたのはカジュアルな組織改革やコミュニティマネージャーとしての自分のキャリアを考えていく上で間違いなく大事なことだったと思っています。
振り返って思うこと
私は起業するつもりが全くなかったので、転職と現職を比較したときに、現職の方が「自分が関与できる幅」が大きいことに魅力を感じました。そのベースとしては以下のような資産があったことが影響していると思います。
・会社にいる人たちのポテンシャルを信じることができる
・社内にメンターがいる(もしくはメンターを採用できる素地がある)
・信頼できる上司/同僚が複数いる
・一定の信頼を周囲から得ている
悩んでいる人に向けてのメッセージ
というわけで、G'sで得たことの活かし方というのは、何もプログラミングスキルのみに限定したことではないと思います。
また、エンジニアとして生きる方法を選ぶにあたっても、考えるべきことはあります。
1.他の実現手段との比較しても転職を選ぶ意味があるか
(社内でそのようなポジションを確立できないか考える)
2.自分自身がエンジニアという職種に向いているのか
3.エンジニアの中で、どのようなポジショニングをとるのか
(根っからのソフトウエアやインフラ好きがいる中で、何を自分の強みとしてキャリアを築いていくのか)
新しい会社で信頼を得るというのは時間がかかるケースもあるので、今の会社が好きという人は正直に周囲に相談してみるといいのではないかと思います。
上司の中にも「教育済みの人材が辞めてしまうぐらいであれば、交渉しにきてくれ!」と思っている人もいるなぁ...というのは自分の転職経験を通じて感じるところでしたので、コードを書くこと自体が仕事として認知されたり、有給を40日分つかうことが許されたりするかもしれません。
サラリーマンとして働く日本人というものはとかく真面目で、「今の業務に定義されていないこと」は業務外でこなしがちですが、上司の立場から見てみれば「業務に定義しちゃえばいいじゃん、それ」というパターンもありますので、もし私と同様に人間関係面の資産をもつ人はチャレンジしてみるといいと思います。