生涯未熟

生涯未熟

プログラミングをちょこちょこと。

一人のエンジニアに見る転職の成功・失敗

転職 Advent Calendar 2016 - Qiita の7日目です。

エンジニアにとっての一大イベント、「転職」。

そんな転職の助けになるかどうか分かりませんが、4回転職した平凡なエンジニアの転職談を書き綴ります。

1社目:老舗の下請け会社

関西にある老舗の下請け会社に新卒として入社しました。

業務としては

  • 某大手SIerの下請け(主に一次請け)
  • 自社製品の開発(そんなに売れてない)

という感じでした。

ただ、私の配属された部署は所謂SESをやっていて、在籍していた2年間はほぼ他社でテスト要員として働く毎日。

そもそも面接時に「Webのお仕事やらせてあげるよ」と聞いていたのに、やっていることと言えばExcelスクリーンショットを貼り付けてファイルに日付を書くという、猿でも出来るようなお仕事でした。

本当にこの2年間はエンジニアとして何も成長せず、無駄なキャリアだったなと今でも後悔しています。

転機

そんなある日、某エージェント会社からブログ経由で連絡が入り、東京の会社をやたら紹介されたので「まぁ東京で働いてみるのもアリか」と思うようになり東京の会社へ転職しました。

2社目:設立間もないベンチャー企業

2社目にまだ2名しか社員がいないベンチャー企業に入りました。

業務としては

  • Web系企業の元請け
  • 自社サービス開発

という、当初やりたかったWeb系のお仕事ができました。PHPをちゃんとやり始めたのもこの時でした。

特に年収も上がることは無かったですが、地方民からすると「ベンチャー!すげぇ!」って感じで入社しました。これが大きな失敗だったのです。

一度目の失敗

元々、1社目に居た時は実家暮らしをしていて金銭面ではかなり楽をしていました。

ただし、東京に来ていざ一人暮らしを始めてみると「家賃」「東京の物価」に苦しめられる毎日を送る羽目に。

「こんな年収じゃ足りないよ!」と叫ぶ日々。自炊しようにも毎日朝から終電まで仕事で出来ず、土日もほぼない状態だったので本当に死ぬかと思いました。

転機

本当にこのままではいつか電車に飛び込むのかもしれないと生命の危機を感じ、転職してたった4ヶ月でしたが退職しました。

そして、2週間ほどニートをやっていると別会社の知人から「うちの会社来ない?」と誘いを受けました。

さすがに金も底を尽きかけていたので、サクッと転職しました。

3社目:SES企業

さて、3社目の会社は1社目と同じくSESを生業としている会社です。

ただし、業務内容としてはきちんとエンジニアをやらせてもらえて、そこまでハードワークでもなかったので2社目で傷付いた心と身体を休めることが出来ました。

年収面はほぼ上がらなかったものの「まぁこんなもんか」と割り切ることにしました。

転機

しかし、1年ほど経ったある日。社内が財政難に陥り、親会社のグループ子会社に吸収されるという事態になり、社員が次々と消えていくことに。

さらに、その時の仲良くなった出向先の方から「めっちゃマージン抜かれますよ、これ転職した方が良くないですか?」と色々と裏事情を聞き、転職を決意。

最初はフリーランスとしてやろうかと思っていたのですが、某フリーランス向け案件紹介サービスをやっている方に「このスキルではフリーランスとしては厳しい。幾つか企業を紹介するので、そこで修行を積まないか?」と提言され、紹介された企業の中から転職先を決めました。

4社目:資金調達経験済みベンチャー企業

また懲りずにベンチャー企業に転職してしまいました。

ただ今回は、「資金調達済みである程度余裕がある」「人が沢山いる」という点で前のベンチャー企業とは違ったので「ここならイケる!」と転職しました。

年収も無事上がり、ストックオプションも貰えるということで「もしや上場した暁にはストックオプションでウハウハかな?」と内心浮かれていました。

転機

暫くはある程度モダンな開発環境でエンジニアリングを学べて良い環境だなー、転職して良かったなーと安堵していました。

しかし、いつまで経っても上場する気配がないし、「本当にこの会社は上場出来るの?」という疑念が沸々と湧いてくる。

更には急にCTOがいなくなるという事態もあり、「こりゃやべぇな、ますます上場が遠ざかるわ」と思っていました。

そんな日々を過ごしていた時に「うちの会社に来ないか?」とオファーを受け、とても魅力的な労働環境だったので転職することに。

5社目:中小企業

というわけで現職に至ります。

副業OK・リモートワークOKな環境でとても満足しています。

まとめ

色々と紆余曲折はありましたが、様々なことを学びました。

  • 職場環境に不満を持ったらすぐに辞めること(機会損失を避ける)
  • 案外平凡なエンジニアでもサクッと転職出来る(30歳越えたらどうなるやら・・・)
  • ちゃんとホワイトな企業は存在する

転職するということは精神的疲労や不安感などあるかもしれませんが、案外どうとでもなります。

かるーい気持ちで色んな会社を転々としてみるのも、一つの生き方としては面白いんじゃないんでしょうか。

という感じで、転職 AdventCalendarの7日目を締めさせて頂きます。

お布団と私と出社芸

出社芸 Advent Calendar 2016の2日目ということで、実際の出社芸の数々をお見せますよ。

1. 二度寝

f:id:syossan:20161202142159p:plain

これは誰もが経験のある、やっちゃった系の出社芸ですね。

人間は睡眠欲には抗えません、仕方ありません。

2. 服がない

f:id:syossan:20161202141814p:plain

まぁこれはよくあるやつだとは思うんですが、「さーて!会社に行くぞ!」と思ったら着る服がありませんでした。

前日の洗濯忘れってやつですね。仕方ありません。

3. 散髪しちゃう

f:id:syossan:20161202141951p:plain

うん、これもまぁありますよね。

前日の夜に「あー・・・髪の毛多くなってきたな・・・」と思ったわけですよ。で、切ってから出社しよう!となったわけです、えぇ。

これも仕方ありませんね。

4. スッと寝ちゃう

f:id:syossan:20161202142405p:plain

これは僕自身ちょっとビックリしました。

ご飯を食べた後って眠くなるじゃないですか?「眠いなー眠いなー」と思ってたら、いつの間にか寝てました。

ちなみにちゃんとPM6:00に出社して深夜まで働いたのでノーカンです、仕方ありません。

5. 勉強会でも芸しちゃう

f:id:syossan:20161202142720p:plain

これは社内の人に「えぇ・・・」とドン引きされましたね。いや、寝袋の寝心地がちょっと悪くて寝付けなかったんですよ。

これもまぁ仕方ありません。(※Go Conference関係者の方、申し訳ございません)

6. たまに早く出社すると心配される

f:id:syossan:20161202143014p:plain

出社芸を日常としていると、このように心配されてしまうことがあります。仕方ありません。

私としては、「とても気分がいいのでたまには早く出社するか!」という気まぐれですので他意はありません。

まとめ

社内だと出社芸の人と言われてますが、そんなに特段変わった出社芸をしていなくてホッとしました。

やはり人間、普段の行いの棚卸しというのは大事ですね。

xamarinコミュニティの炎上について思うこと

最近、めっきり寒くなりましたが皆様体調は大丈夫でしょうか?

この寒い中、ある界隈が焚き火でボヤ騒ぎになったようです。

xamarinの勉強会でのLT資料の一コマのようですね。

[追記]:こちらLT資料ではなく、セッション資料だったようです。お詫びして訂正致します。

勉強会自体はこちら

jxug.connpass.com

上記画像が原因となり、各所でボヤが発生したようです。

今回はこのボヤ騒ぎについて色々と思うことを書いてみます。

一体何が問題だったのか?

この騒ぎ、一体何が問題だったのか?

私としては以下のような考え。

まとめると、

  1. 技術コミュニティにおいての過度な内輪ノリ
  2. xamarinコミュニティによるちょまど氏への持ち上げ(または特定の人物の偶像崇拝行為)

ではないでしょうか?

1. 技術コミュニティにおいての過度な内輪ノリ

ツイートでも述べましたように、あるコミュニティでしか通じないハイコンテクストをLTという他者へ向けた発表で用いるのは、外部から見るととても異質なものに見えます。

例え、冗談だったとしても「このコミュニティにはそういう空気感があって嫌だな」と感じる方はいるでしょうし、最悪の場合その技術そのものに嫌な印象をも持ってしまうことがあるかもしれません。

また、以前@shin1x1さんがブログで仰られていたように、技術勉強会において技術と関係のないコンテクスト共有が必要な要素を入れるのはやめましょう。

blog.shin1x1.com

知らない人からすると、ただただ意味のないものを見せられて無駄ですし、そもそも技術に対しての発表においてそのようなものは必要がないはずです。 (コンテクスト共有の要らない軽い笑いを入れる程度なら許容範囲でしょうが)

また今回のxamarinコミュニティに限らず、他のコミュニティでもこのような問題は軽度ですが抱えていると私は感じています。

対岸の火事と思わずに、自分にそのようなことはないか今一度振り返ってみても宜しいのではないでしょうか?

2. xamarinコミュニティによるちょまど氏への持ち上げ(または特定の人物の偶像崇拝行為)

今回の件が起こった背景にはどうしても「ちょまど氏が異様に持ち上げられている(砕いた言い方だとサークルの姫のような扱い)」といったことが頭をよぎります。

誰がどのような人物を崇拝しても良いとは思うのですが、どうもちょまど氏が持ち上げられる際の理由がエンジニアとしてではなく、一人の女性として見た場合の持ち上げられ方のような気がしております。

少なくとも技術コミュニティ内において、そういった目線で女性を見ることは唾棄すべきことですし、本人としても自覚があるなら何かしら働きがけをするべきなのではないでしょうか?

ちょまど氏を担ぎ上げている方々は今一度「この人が男性だった場合、同じ扱いをするだろうか?」ということを自問して頂きたい。

技術に関する人間に女性も男性もありません、一人の人間として扱う流れが一般的な世の中になってもらいたいです。

まとめ

健全な技術コミュニティ作りをしましょう。

[追記]:

JXUG主催者様よりご連絡を頂き、今回のことを真摯に受け止め、今後は細心の注意を払って運営をしていきますとの事です。

また"本スライドは、ちょまどさん本人によるものではなく、JXUG 初参加の登壇者の勘違いによるもので、不適席な内容と判断した主催者により、該当スライドを削除した状態で公開いただいています。JXUG では、今後透明性を高めるためにポリシーの明文化などを行っていきます。"(原文ママ)を加えて追記致します。

ちょっと闇を垣間見た話

簡単な要約:なんかやらかしてるGithubリポジトリを発見した

Rustを触る②

今度は「シンタックスとセマンティクス」やっていきます。

変数束縛

let を使う。

パターン

let を用いた際の左式は パターン と呼ばれる。

let (x, y) = (1, 2);

こういうことが可能。

アノテーション

let x: i32 = 5;

公式ドキュメントでは推論する型をコメントで書くやり方も紹介されているが、基本的には型は書いていこう。

可変性

変数束縛はイミュータブル。なので以下はエラー。

let x: i32 = 5;
x = 10;
// re-assignment of immutable variable `x`

ミュータブルとして扱いたい場合は、 mut を使う。

let mut x: i32 = 5;
x = 10;

束縛を初期化する

未初期化の値を使用するとコンパイラに怒られる。

ついでに文字列中に値を差し込んで入れる例。

let x: i32 = 5;
println!("x = {}", x);
// x = 5

スコープとシャドーイング

変数束縛のスコープはブロック内のみ。

またスコープ内で変数束縛を上書くことをシャドーイングと呼ぶ。

let x: i32 = 8;
{
    println!("{}", x); // "8"を印字する
    let x = 12;
    println!("{}", x); // "12"を印字する
}
println!("{}", x); // "8"を印字する
let x =  42;
println!("{}", x); // "42"を印字する

違う型で上書くことも出来る。