元税理士受験生、プログラミングをする

1990年生まれド文系プログラマーの軌跡(元名は今日もエメラルド気分)

私が転職するまでのアクション

私が転職するまでのアクション

f:id:leokun0210:20171208095944p:plain

謝罪

しがないアドベントカレンダーに意気揚々と登録したのに、投稿が遅くなり誠に申し訳ありません。言い訳させてもらうと、ここ3日ほど風邪で寝込んでました。そういうリスクも考えてやれよという意見はごもっともです。反省してます。。。中身も推敲できていないので、バレない程度に少しづつ直していきます。(ちなみにこの記事も手抜きで、昔書いた2つの記事のブラッシュアップです)

しがないラジオAdvent Calendar2017 4日目の記事です。

自己紹介

ryuchan00です。

1990年生まれ

文系私立大学卒業

職歴

1社目 零細SIer 3年2ヶ月

2社目 Web系の自社開発 1年2ヶ月

3社目 Web系の自社開発 2ヶ月~

という感じです。一言で言えばTHE凡人です。

この記事の目的は、自分のような零細SIerに勤めていて、脱出したくても方法が分からない人に対してアクションを起こしてもらうことです。

1社目

私は新卒で零細ITベンダーに入社して、客先常駐をしていました。現場では3年間COBOLを使い続けていました。当時は、他の同僚と比較して後進的な技術を使っていると思っていました。仕事で楽しいと思ったことなんてありません。周りもそんな感じです。しかし、本当にこのままでいいのかという疑問が湧いてきます。

現場の先輩は将来の自分

大変失礼ながら、現場の先輩方は技術に興味がある方々ではありませんでした。Rails?AWS?なにそれおいしいの状態です。こんな人たちと一緒だったらロクな将来にならないと思い始めました。きわめつけはルーターとPCを有線LANで接続できないプログラマーが私の上司だったことです。その光景をみた瞬間に私は転職を決意しました。

どこの業界であればCOBOLerのスキルが生きるのか

今まで時間を費やして得たスキルを全部捨てて新しい業界を目指しのは合理的ではないと考えます。たとえ得たものが多くの人に自慢できないようなスキルでも、無いよりはマシです。少しでも活かせそうな場所を考えた結果、2つの回答が浮かび上がってきました。

  • IT業界の営業

IT業界の内情を知っていれば、営業としてかなり建設的な提案ができるものと思われます。少なくとも各開発フェーズで何を行っているか理解できるのは有利です。Webエンジニアになろうと決意する前は、IT業界の営業の面接とかも受けに行ってました。全部落ちたところで素直にWebエンジニアになろうと決心しました。

  • Web業界

プログラミング経験が多少なりともあるのは、有利です。codecampというオンラインブートキャンプでPHPを勉強してWebエンジニアになりました。受けた会社は、とにかく客先常駐が嫌なので自社開発(自社プロダクト、受託問わず)面接を受けていました。

転職までのプロセス

上にも書いたようにまずcodecampに通ってみっちりHTML,JavaScript,PHPを勉強しました。codecampを選択した理由は、他のスクールに比べてWebの基礎をみっちりできると思ったからです。転職サイトは、ポートフォリオがなかったのでpaizaのオンラインスキルチェックでスキル証明しました。ランクはCです。

2社目

ネットや本で見ていたものと違ったWebの世界

Webエンジニアになって半年ぐらい経過した時に、

「この会社...なんか想像したWebの世界と違うぞ...」

と思うようになりました。

具体例をあげると

  • エンジニア全員がWindows使用、選択不可
  • GitHubに草が生えてる人がいない
  • LTしている人がいない
  • Qiitaで記事を書いている人がいない
  • 入社していきなりVBAを2ヶ月もやらされる
  • ベアプロしている光景なんて見たことがない
  • 手動デプロイしている
  • テストがないし、誰も興味がない
  • そのため画面キャプチャをとって、テストエビデンスとしている

企業文化が自分と合っていない気がしました。

どんな企業文化が合っているのか?

技術力はどうやったら上がるのか?

その答えを探すため、とある行動を起こしました。

休日にスタートアップで働いてみた

なぜスタートアップかというと、人手が足りていないので私のような技術力でも相手をしてもらえると思ったからです。

早速Wantedlyで「土日 エンジニア」で検索をかけました。ご縁があり、とある1社で働いてみることになりました。その会社ではホームページ作成サービスを運営しており、バグ修正、UI向上などをやりました。そんなガッツリした機能改修ではなく、インターンがやるような軽めなタスクが基本です。

何を学んだか

  • コードレビューの大切さ

以前は、コードなんて動けばいいとか思ってました。しかし、コミットしたコードに対して、常にレビュワーから3つ以上指摘が入ってました。印象深かったコメントは「このコードはユーザーが○○したらどういう想定ですか」という指摘です。ただ開発者都合で最短の操作しか行わないと思い込んでおり、ユーザー目線が欠けていたことを自覚させてくれた瞬間でした。コードレビューというのは、コードを通した複数人の意識のすり合わせであると思いました。

  • テストコードの素晴らしさ

実はスタートアップで初めてテストコードに触れました。平日に働いている会社ではテストコードがありませんでした。テストコードを動かして直感的にリグレッション理解できました。やっぱアプリケーションエンジニアはコードを書くことがバリューだから、ストレスを減らす仕組み作りは大事と思ったのも、この時です。

  • スタートアップの姿勢

私は日曜日のみ働いていたので、リポジトリからpullするタイミングは週に一回です。驚いたのか、pullするたびに、トップページのレイアウトが変わっていることです。

そして2社目を辞める

スタートアップのアルバイトを通して、ストレスの少ない開発組織に憧れを持つようになりました。そのために、継続的インテグレーションが行われてる企業がいいなーと考え転職しようと思いました。2回目の転職は、とにかく開発フローが継続的に改善されている職場にしようと思いました。それもある程度スピード感を持った職場です。

最後に

こうやって言語化することによって自分の転職へのプロセスが理解できてよかったです。皆さん、もし今の会社が合わないかもと思ったら、働きながら他の世界もみてみるべきです。いきなり本職を辞めることはありません。リスクを極力排除して自分探しをしましょう。