このサイトでは、プログラミング未経験で就職し、就職後にシステム関係で働いたこれまでの経験を基に、これからプログラミングを勉強したいと思っている方向けに、また自分の備忘録も兼ねて記事を書いていきたいと思います。
筆者の略歴とこれまでの経験をご紹介します。
Contents
出身と学生時代
1988年7月生まれ
神奈川県横浜市出身
大学は経済学部でミクロ経済学を専攻していました。
学生時代に一度C言語を勉強しようとして挫折しました。
それ以外は統計パッケージのRを少し授業で使った程度で特に学生時代はプログラミングをしていたわけではありませんでした。
就職とプログラミングを始めたきっかけ
就職ですが、経済学部の勉強自体は、好きだったので何かしら関係する仕事に就きたいと思い就職活動では、主に金融関係のコンサルやシンクタンクを受けました。
内定を貰ったのは志望していた業界と若干異なりますが、建設コンサルタント業界という業界で、国や自治体から社会調査などを請け負っている会社に就職しました。
新卒で入社した会社の研修でプログラミングのJavaとFortranの研修を受けたのがプログラミングに触れたきっかけでした。
研修や仕事をしていく中で、失敗した原因がはっきりしていて必ず解決方法があること、自分で作ったプログラムが動いた時の楽しさを感じ、自分自身でも勉強するようになりました。
これまでの開発に関わったシステムの概要
社内の勤怠管理、経理システム
新卒で入社した会社の研修期間中に作成したシステムです。
その会社ではプロジェクトごとに売り上げと予算を管理しており、社員の各プロジェクトでの勤務時間を入力するWEBシステムと入力された勤務時間とそのほかの経費を基にプロジェクトごとの採算性を計算する経理システムを開発しました。
どちらもJavaのサーブレットで構築しました。
また、システムの構築の際に、webサーバの設定やデータベースの構築などのlinuxサーバの構築を1からできたのも良い経験になりました。
旅客流動シミュレーションシステム
上に書いた社内の勤怠管理システムの完成が近づいた頃に、別に社内で開発していたシステムを引き継ぐことになりました。
システムとしては、駅や建物などでの人の動きや混雑をシミュレーションするシステムで、C++で書かれたスタンドアロンシステムを引き継ぎました。正確には私が引き継いだ段階で元の開発担当者は退職していたので、資料とソースコードを引き継ぎました。
今振り返るとどう考えても地雷なのですが、当時はイベントハンドラなども分からないままシステムを動かして見たり、ブレークポイントを置いたりしてシステムの動きを追っていました。
結局、社内開発は見送り業務では外国製のソフトを使用することになったのですが、既存のシステムを理解する方法を経験することができました。
また、webシステムを開発して次にスタンドアロンシステムに関わったので、webシステムとの違いという部分でも学ぶ部分が多かったと思います。
官公庁向けの業務システムの開発
研修や社内の開発で社会人の1年目が終わり、2年目以降は実務に入るようになりました。
初めてお客さんに納品したシステムとして、官公庁向けの業務システムで、道路上の交通量を観測して渋滞状況などを監視するシステムを開発して納品しました。
こちらはVB.netで開発を行い、DBはOracleを使用しました。また、開発の規模も大きかったので、バージョン管理システムの導入や共通ライブラリの開発なども行いました。
その他に開発したもの
上で紹介したシステム以外にも業務で必要になった集計用プログラムやwebから必要なデータを取得するwebスクレイパーなどのプログラムを作成しました。
転職
2018年の3月に新卒で入社した会社を退職し、WEBサービスを運営する会社に転職しました。
職種としては運営するWEBサイトのログの解析や機械学習を利用したサイトの機能を開発するデータサイエンティストのポジションになります。
フリーランスとして独立
2019年の1月にフリーランスのエンジニアとして独立しました。
今は都内のITベンチャー企業で機械学習エンジニアとしての仕事を受注しつつ、ランサーズなどのクラウドソーシングでお仕事を受注しています。
GigHubアカウント
筆者のGithubアカウントです。