エンジニアリングとお金の話

都内で働くエンジニアの日記です。投資と技術の話題がメインです。

初めての転職活動について

現在SEとして仕事をしているが、どうしても自社サービスに関連する仕事をしてみたいと思い転職する事にした。1ヶ月程活動し無事に内定を得る事が出来たが想像以上に転職は大変だった。今回の転職活動を通じて感じた事をまとめる。

まず、自分のスペックだが、金融関係のSEとして13年間働いており、現在35歳。作業工程は要件定義〜運用まで一貫して担当しており、今まで全ての案件が客先常住での開発といった感じである。なお、主な使用言語はjava、c、cobolでプライベートではpythonとswiftを使用している。

今回の転職の目的は、マネージメント寄りの仕事が主になりつつあるので、技術寄りの仕事をもっと取り組みたいということと、自社で落ち着いて開発をしたいということを希望していた。また、ベンチャー企業にも興味があったので可能であれば経験を積んでみたいと思っていた。

転職活動を行うにあたり、エージェントを活用する事にした。今回は大手1社とweb系案件に強い2社を活用する事にした。エージェントを活用して思ったのは、1社だけでは無く複数社のエージェントを活用するのが大事ということだ。正直な話エージェントの当たり外れや相性は結構あるなと感じた。

自分の場合は最初web系に強いA社のエージェントと会話し企業を紹介して貰ったが、納得が行かず、次はweb系に強いB社のエージェントと会話し納得する企業を紹介して貰った。で、最後に大手はどの様な企業を紹介してくれるのか気になり、C社のエージェントも活用してみた感じである。比較対象が無いことには優秀なエージェントかどうかも判断出来ないので最低でも2社は登録することをお勧めする。

転職活動の流れは、まずエージェントに紹介して貰った案件に応募して、書類審査が通過すると面接を受けることが可能となる。自分の場合は最初B社が紹介してくれた12社に応募し、書類審査が4社通過した。その後1次面接を受けて4社とも通過することが出来た。

なお、4社の内訳は以下の通りである。

  1. WEBサービス系企業。従業員数20名程度。非上場
  2. O2Oサービス関連企業。従業員数80名程度。マザーズ上場
  3. WEBメディア系企業。従業員数100名程度。非上場
  4. IOT関連企業。従業員数10名程度。非上場

自分としては、No1のWEBサービス系企業か、No2のO2Oサービス関連企業に行きたいと思っていた。で、最初にNo1のWEBサービス系企業の2次面接を受けた。

この会社の2次面接はインターンシップを行い、その業務内容にて合否を判定するという感じであった。自分に課せられた課題は、ステージング環境を管理するslackのボットをnode.jsで作るというものであった。slackのボットもnode.jsもあまり理解していなかった為、依頼された物を作る事が出来ず、結果不採用となった。

また、No2のO2Oサービス関連企業の2次面接は通過することが出来たが、給料が現職より200万円程下がるとのこと。流石にそれは厳しいと思い辞退することとした。

数々の面接をこなし、現実を理解していく内に自分の現在のスキルと経験ではベンチャーは厳しいと感じた。また、実際に転職となった際に、SIからWEB系サービスの開発と結構大きな変化を向えることとなる。その為、ある程度教育が整った企業がいいのではと思い、企業規模とネームバリューも重視することとした。

自分の中でどの様な企業で働きたいか大体の整理がついたので、大手エージェントC社に紹介して頂いた企業を受けることとした。この企業は日本のWEB系企業では歴史がある企業で、誰もが一度は使ったことがあると思われるサービスを提供している企業である。企業規模もネームバリューもあるので自分が希望している条件は全て満たしていた。

数々の面接を受けていたことにより、この時点になると全ての質問に対してほぼ完璧な回答を行うことが出来るようになっていた。また、自分が本当に入社したいと思った企業であったこともあり、素直に受け答えを行うことができた。

全てが上手く噛み合ったこともあり、結果無事に内定頂いた。7月頭から転職活動を初めたが、本当に濃い1ヶ月だった。

正直初めての転職活動であった為、仕事をしながらの転職活動がこんなに大変だとは思わなかった。毎日のように面接を受けるのも結構なストレスで非常に体力を奪われる感じであった。また、自分の場合は退職日を既に決めて会社に伝えていたので、そのこともプレッシャーとなっていた。転職を検討している人は転職先が決まってから退職手続きを進めることをお勧めする。

10月からは新しい会社へ出社することとなる。早く引き継ぎを終えて、次の職場で活躍出来ように頑張りたい。

【技術】swiftを久しぶりに書いた

とある事情でiphoneアプリを作成する必要があり、久しぶりにswiftを書いた。その際に学んだ事をメモ。

・文字列の数字を全て合算する方法

//文字列12345を全て足した結果の取得方法
var num = "12345"

//文字の配列に一旦変換し、その後map関数にてString型→Int型へと変換する
 let tArray = Array(num.characters).map{Int(String($0))!}

//上記配列をreduceにて合算する
 let tSum = String(tArray.reduce(0){(num1,num2) -> Int in
  num1 + num2
 })

・全ての値が数字か確認する方法

var num = "12345"

//正規表現にて判定
let predicate = NSPredicate(format: "SELF MATCHES '\\\\d+'") 
if predicate.evaluate(with: tid.text){
   print("数字")
}else{
   print("数字以外")
}

【技術】Xvimが動かなくなったらすること

Xcodeをアップデートすると毎回XVimが動かなくなり、その都度なんでだろうと思っていた。原因を調査していたらXVimのページ書に理由が書いてあった。

  1. Why XVim may not work on a newly released Xcode version?

Xcode releases have different UUIDs, to make any Xcode plug-in work, the UUID that the plug-in is using must be updated to match >Xcode’s. Usually this takes us less than a day, but you can also do it yourself.

ようは、Xcodeのアップデートを行った際は、プラグインのUUIDを更新する必要があるという事である。なるほど。

という事で、XVimが動かなくなったら以下のコマンドを実行しましょう。

sudo codesign -f -s XcodeSigner /Applications/Xcode.app

【技術】kerasのnp_utils.to_categoricalについて

ディープラーニングの勉強を最近はじめた。手始めに評判がいいkerasを使用している。

参考にしているサイトは以下のサイトでひたすら写経している感じである。

www.procrasist.com

その中でMINISTの求め方について以下のコードが記述されている。

from keras.datasets import mnist
from keras.utils import np_utils
(X_train, y_train),(X_test,y_test) = mnist.load_data()
X_train = X_train.reshape(60000,784).astype('float32')
X_test = X_test.reshape(10000,784).astype('float32')
#[0,255]の値を[0,1]に正規化
X_train /= 255.0
X_test /= 255.0
# 1 of Kのベクトルに変換
y_train = np_utils.to_categorical(y_train, 10)
y_test = np_utils.to_categorical(y_test, 10)

ministデータを読み込んで、0 OR 1に正規化しているのだけど、np_utils.to_categoricalで行っている1 OF Kのベクトルに変換がよくわからなかった。調べてみると以下の記事を発見。

may46onez.hatenablog.com

Kerasはラベルを数値ではなく、0or1を要素に持つベクトルで扱うらしい つまりあるサンプルに対するターゲットを「3」だとすると[0, 0, 0, 1, 0, 0, 0, 0, 0, 0]みたいな感じにしなければならない。

np_utils.to_categoricalを使用する事により、ラベルをベクトルに変換出来る。今回のコードは

y_train = np_utils.to_categorical(y_train, 10)

となっているが、第一引数がベクトルに変換したいラベルで、第二引数がベクトル配列の個数となる。今回は0〜9の範囲なので10個の配列が必要となる為、10を設定している。

【投資】最近気になる投資について

最近、新しい投資対象として仮想通貨やソーシャルレンディングが注目を浴びている。

今年はどちらかに投資を行いたく様子を伺っているが、中々踏み込めずにいる。。

多分自分の中で調査と検証が足りない事が自信を持てない原因だと思う。ただ、仮想通貨についてはボラティリティが高すぎる為、どうしてもギャンブル要素が高い気がしてならない。そもそも現在の価値が安いのか高いのかも良く分からない状態である。まだまだ、投資を行うには先が長い気がする。

なお、ソーシャルレンディングについては要は金貸しである事から何となくイメージが湧く感じである。金利水準が高いものが多く、正直心が揺さぶられる商品が多数ある。ただ、元本が保証されている訳では無く、歴史も浅い業界なので始めるとしても少量の金額から初めてみる予定である。

6月中にはどちらかに投資を行いたいと考えている。株式投資以外の武器として知識を深めて行きたい。

【お得】無料でVPSサーバを持つ方法

自分が好き勝手できるサーバがあると非常に便利である。ちょっとしたサービスの公開やハッカソンに参加する際に使用するなど活躍の場は多い。

最近はVPSサーバを手頃な料金で契約する事ができるが、大体維持費が月に1000円ほど掛かる。年で換算すると1万を超える出費である。サーバ契約したいけどそんなに使う訳でも無いのでという理由で躊躇してる人が多いのでは無いかと考える。

続きを読む

【感想】スタートアップ思考で考えるエンジニアのキャリアについて

2月17日に開催されたデブサミ2017に参加して来た。

event.shoeisha.jp

機会学習の話や組織運営の話など色々な話を聞く事が出来たが、一番インパクトが大きかったのは馬田 隆明氏の「逆説のキャリア思考」である。ちなみに、同じ時間帯にpythonに関する公演もあったので非常に悩んだが、この講演を選んで正解だった。

続きを読む