サカナ未遂

プログラミング、筋トレ、子育て

新しい会社に入社して1週間が経ちました。

2019年が始まりました。
去年末で前の会社を退職し、今年から新しい会社で働き始めました。


入社して1週間が経ち、少しは慣れてきたので、新しい会社について感想を書いていきます。
まず、今の会社は、自社製のクラウドサービスを提供している会社です。

(会社に許可取ってないので、会社名と詳しい業種は伏せます)

 会社は自社オフィスではなくてコワーキングスペースに入居していて、他の会社の人や一般の方なんかも出入りしています。

なので、基本的にフリーアドレスで、座りたいところに座っています。

マシンはMacBookPr13インチ、メモリ16GBの新品を支給してもらいました。

去年末にHHKBを買ったので尊師スタイルで業務を行なっています。

でも、もう少ししたらディスプレイを買ってくれるらしいので、そうなったら席は固定されるかもしれません。


社員は10人くらいでしょうか、時短の方や、インターン、週2、3の方もいて、よく把握していません。

創業して4年くらいの会社で良くも悪くもルールとかあまり決まってなくゆるい感じです。遅刻の連絡がslackで「遅れまーす」見たいな感じでくるので、これがWeb系スタートアップか!とカルチャーショックを受けています。

 

勤怠管理はジョブカン、労務系はSmartHR、会社の業務タスクはTrello、開発のタスクはGitHubにissueあげて、ZenHubで管理しています。

全くのペーパレスだし、どこでも作業ができます。

現在、定時9:30〜18:30の8時間労働となっていますが、フレックスを導入するか、リモートワークをどこまで許可するかなどの就業規則を作っているところとのことです。

 僕はあんまり通勤は苦ではないし、家だと家事とか気になって集中できないのでそんなにリモートワークにはこだわってないのですが、子供が熱出したり、保育園の面談なので一日休まないといけないことがあるので、そんな時はリモートワークができると嬉しいので、リモートワーク制度は作って欲しいところです。

 

使用している技術ですが、フロントがVue.jsでバックエンドをRailsで作っています。

クラウドGCPで、GoogleCloudBuildを使ってDockerイメージを作ってデプロイし、

K8sでDockerイメージを管理しています。 

その他ワークフローエンジンはdigdag、Node.jsやGolangでできたアプリもあります(まだ全体をつかめていない。)

前にRubyで作っていたアプリを理由あってNode.jsに置き換えたみたいです(Ruby好きとしては残念です)

担当はこの辺り全般をやることになりそうなので、しばらくは忙しい日々になりそうです。

あらかたできるようになったらフルスタックエンジニアとか名乗れちゃうかな〜なんて思ったりしています。

 

この1週間の作業としては、最初に3日ほどは環境構築とコードリーディングして、そのあと開発作業に入りました。

新しく作った機能をプルリクしたら、マージされその日のうちに本番環境にデプロイされました、、、

SIerにいた時はたった1行の修正でも、リリースの資料とテストケース、エビデンス作って、上長のハンコもらい、偉い人に説明に行って許可もらい、休日前の深夜のシステムが止まっている時間に出社して二人体制でリリースし、翌営業日のシステム稼働前に出社して待機し、稼働確認取れたら、また偉い人に報告してリリース完了資料を作成して終わり!って流れだったのに、このスピード感半端ないっす、、、

 

ってことでしばらくは会社で使う技術の深掘りをして、余裕が出てきたら新しい技術の勉強なんかも続けて行きたいと思っています。

2018年の振り返り

去年の今頃、技術的に浦島太郎状態だったのに危機感をもち、気合い入れなおそうと、一年いろいろやりました。

ちょっと早いけど、今年のふりかえりです。


・人生初のMacBookProを購入(まあこれは2017年末ですが)
Vagrantubuntuを操作したり、Node.jsでサーバーサイドについて学習
・SlackBotを作ったり、CircleCIを使ったり。
GitHubだけでなくGit単体について、「独習Git」で学習
Rubyを始めたので、Ruby技術者認定Silverを取得。
・EffectiveRubyでRubyらしい書き方を学んで、メタプログラミングRubyで知識を深める。
・TDDとか軽くふれる。
Ruby on Railsチュートリアルから始め、下半期の大半はRailsで遊んでた。
・プログラミングスクールでSolidusというRailsのgemを使ってECサイトを作ってみたりした。
・HTTPについて学びなおそうと「RealWorldHttp」でGo言語を使って、通信について復習(これはまだ途中)
・Reactの基礎学んでSPAやコンポーネントの概念を学習
 (せっかく勉強したRecomposeがすでに切り捨てられたのは衝撃だった。フロントエンドのスピード感半端ない、、)

・UdemyでVuejsの基礎学習

・あと徳丸本とかセキュリティ関連の本も一通り読んだ。

 

また、アラフォーなんでプログラムだけでなく、組織論や、キャリアパスなども意識し、通勤中はもっぱら読書
・エリックリースの「リーンスタートアップ
・エンジニアリングの組織論
・エンジニアのためのキャリアパス
カイゼンジャーニー

etc...
どれもいい本だった、次の会社で活かせるようにしたいです。


あと英語力も上げようと、ラダーシリーズよんだりESLPod聞いたりしました。

今月からはオンライン英会話を始めましたし来年は6歳の娘と一緒にやりたいです。

 

あとRubyRails系の勉強会には時間の許す限り参加しました。

少しづつ顔見知りもできてきて、これも継続して行きたいです。

 

いま、エンジニアに求められるスキルは多岐にわたり、ただプログラムかけるだけでは
そのうち食べていけなくなるかもしれないので、来年も広範囲の知識+特定のスキルの掘り下げを進めていくつもり。
やっぱり子供が幼いと、休日はゆっくりパソコンいじることはできないので、自習は夜だけと割り切ってやってます。

来年はとりあえず、Docker、GCP、FireBase、Kubernetesとか詳しくなっていたい。
プログラミング言語としてはGoとKotolinはある程度できるようになることが目標。

 

来年一月から入社する会社ではスクラム開発が経験できそうだし、その辺りももっと深掘りしていきたいです。

来年は38歳になるし、40歳以降の向けてキャリアパスも見据えて行動したいと思います。
やることたくさん。子供ともたくさん遊びたいし、旅行も行きたい。
健康第一ならなんとかなるかな。
筋トレも継続して週2回はやるようにします。

ということで2019年も頑張りたいと思います。

Ruby Business Users Conference 2018 WinterでMatzさんに会った

昨日、Ruby Business Users Conference 2018 Winterに参加してきました。

Rubyアソシエーション主催のカンファレンスで、Ruby開発者のまつもとゆきひろさん(通称Matz)が基調講演を行なってくれました。

 

まだ今年からRubyを始めたばかりなので、Matzさんが参加するイベントには初参加となりました。

もしかしたら、少しは会話することができるかも?、ひょっとしたらサインを貰えるかもと期待を膨らませていました。

 

平日金曜の昼から、また忘年会シーズンということもあり、それほど参加者は多くありませんでしたが、カンファレンスはとても楽しめました。

 

Matzさんの講演では、世間ではRubyが死んだと言われているとについてや、Rubyの今後についてなど、開発者目線でのお話を聞くことができました。

特に印象深かった言葉は、

『死なないこと』

『諦めたらし試合終了』

Rubyはコミュニティが広げる、誰かではなく私(たち)で広げる』

『どこでもRuby

『いつもポケットにRubyを』

など。Rubyはまだまだ進化するし、時代に合わせて変化させて行くんだなぁと感じました。

私も微力ながらRubyになにか貢献できることを探していきたいと思いました。

 

その他登壇者の発表のあと、懇親会がありましたが、皆さん遠慮してかMatzさんの周りにあまり人がいないので、思い切って話しかけにいきました。

アジアやヨーロッパのエンジニアについての話や、Rubyを開発して初めて公開した時の話を聞くことができてとても楽しかったです。

世界的スーパープログラマーが目の前にいるので、楽しく喋っていたけど、ちょっと足震えていました(笑)

本当に気さくで、質問には何でもニコニコ答えてくれて、人柄も最高で、会う前より憧れが強くなりました。

写真も撮ってもらい、買ったばかりのHHKBにサインも貰うことができました、イェイ!

今日からもっとRubyをたくさん書いて行こうと強く思いました。

Matzさん、本当にありがとうございました!!!

 

f:id:tera_chan3700:20181215091007j:plain

Matzさんとツーショット

f:id:tera_chan3700:20181215091108j:plain

HHKBにサインもらったー!

 

転職活動報告記

来年一月から新しい会社に転職することが決まりましたが、転職活動は思ったより心が折れかかったので、忘れないように記録しておきます。

 

まず転職しよう、新しい技術を使った仕事をしエンジニアとして生き残ろうと考えたのが去年の11月ごろ。

12月にMacBookProを購入し、N予備校というオンラインのカリキュラムでNode.jsを学び、次にRubyを勉強して3月にRubyの資格を取得。

そのあと4月くらいからRailsを勉強(Railsに特化したオンラインスクールにも3ヶ月通いました)し、通勤中はマネジメントや組織論、セキュリティなどの本を読んでいました。

 

Rubyの資格をとった4月くらいで一度転職活動してみました。

ある転職サイトに経歴を乗せて見ると、たくさんの企業から「気になる」的な奴がきます。

こりゃすぐに転職できちゃな〜なんて思ったりしていま。(今思えばなんて能天気!)

 

一度テック系の企業からスカウトメールが届き面談したのですが、すぐに自信がなくなりました。

面談で何をアピールすればいいのかわからなくなったのです。

無駄に経歴は長いのに、37才のおっさんが「Rails勉強中です!頑張ります!!」なんて、ちょっと言えないですよね。全然面談対策していませんでした。

スカウトが来たので入社できるもんだと思って(←馬鹿すぎる)、ろくにその会社のことを調べることもしていませんし。

その会社で使っている技術は使えるのが当然で、さらに付加価値を提供できないといけないんだと思いました。(もちろんお祈りメールをいただきました。)

 

それで4月以降、とにかくRubyRailsについて学習ばかりしていました。

妻や娘たちとの時間も結構削ったので、本当に申し訳ないと思っています。

またGo言語も基礎的な学習をし、セキュリティやDB周りの知識も強化し、フロントエンドのReact.jsやVue.jsも触るようにしました。 

で自分のスキルに自身がついてきたので10月くらいから転職活動を開始しました。

以下、結果です。

【オンラインスクール経由での応募】
20社中11社返事なし
6社が書類選考落ち
3社が1次面談でお祈り

→全滅

【Green】
1社から気に入ったをもらい面談、2次選考でお祈り

→成果なし

Wantedly
「あってみたい」を押した企業1社、一次選考でお祈り
スカウトが来た3社
1社は会っただけで終わり
1社は2次面談でお祈り
1社から2回面接の上、内定をGet

Wantedlyさんありがとう

 

とまあ、スムーズではなかったけど、思ったより大変ではなかったです。

お祈りメールを頂くたびに、あと10歳若ければ、、、と何度も思いました。

10歳くらい若ければポテンシャル採用とか行けるかもなんて思ったりして、、

何度もお祈りメールをもらうと結構心が折れそうになりましたが、仕事はまあホワイトな環境だったし、焦って転職しなくて良い所に入れなかったら、来年もスキルアップを続ければいいやと考えると少し楽になりました。

 

転職期間はだいたい1ヶ月くらいでしたが、そのために1年前から準備してきたので、やっぱり1年継続して結果が出たのでとても嬉しいです。

ただ転職はゴールではなくスタートなので(勝って兜の緒を締めよ)これからも技術習得を継続していきます。

とあるSES企業を退職し、WEB系自社開発の会社に転職します。

タイトルの通りです、転職します。

 

今年いっぱい在籍して、来年から心機一転新しい会社で頑張ります。

 

今の会社は特に誰も知らないような会社なので、あえて社名は出しませんが、

世間で槍玉にあげられるSESやってる会社ながら、意外とホワイト企業だったと思います。

休んでも有給は後から申請すればいいし、みなし残業40時間分込みの給料なのに一切残業しなくても何も言われないので、とてもストレスなく過ごせました。

だいたい毎月の稼働時間が150時間を切るくらいでした。

 

僕はこの会社は5社目なのですが、前の会社で一緒に働いていた仲間に声かけられて入社することになりました。いわゆるリファラル採用ってやつですかね。

 

前の会社は結構なブラックで、残業代一切出ないし、給料安いし、だったのですが今の会社に転職して年収が100万以上、上がったのはとても感謝しています。

 

じゃあなんでやめるかって言うと、やっぱり自分のスキルに不安を感じることが多くなってきたからです。

ホワイト企業なんですが、やっぱり現場に常駐するわけで、そこはあまり選ばせてくれませんし、現場の理不尽な指示に従わないといけないのはやはりあります。

特にCOBOL使う現場だったり、開発はオフショアに投げて、テスト結果の確認してくれとかの作業やったりと、テンション上がらない現場が多くてこのままじゃイカンと言う気持ちが強くなったためです。

そのあたりの気持ちは下記に書いています。

blog.tera-chan3700.com

 

去年の12月にMacBookPro買ったのでちょうど一年経ちました。

一年頑張ればある程度環境を変えることができるんだなぁと言うのが率直な感想です。

この調子でまだまだスキルアップ目指し、新しい会社でも頑張ります。

 

新しい会社は、まだ所属前なので社名は出しませんが、技術スタックは、

RailsGolang、Vue.js、Docker、kubernetesなどを使うと聞いているので、モダンな開発ができるのではないかと期待しています。

まだまだ小さい会社なので会社の成長の助けになれるように頑張りたいと思います。

スマートウォッチが便利すぎて手放せない

今年買ってよかったものの中で、スマートウォッチが一番かもしれません。

 僕が買ったのはHUAWEI Band2と言うやつで、5000円くらいのやつです。

HUAWEI Band 2 / ブラック  スマートウォッチ ※メタルボディ 防水機能50m 21日間連続使用可能【日本正規代理店品】 Band2/Black

 

スマートウォッチで一番欲しかったのは通知機能でした。

これまで公園で子供と遊んでいるときは、基本的にスマホはバッグにしまっておくので、妻や友達から連絡が来ても気づかないことがよくありました。

でもスマートウォッチは常に腕につけているので、Lineや電話が来るとブルブルと教えてくれます。

そのため大事な連絡などを見逃さずに済むようになりました。

 

スマートウォッチを買うにあたり重視したのは、

・通知機能

・バッテリーの持ちがいいこと

の2点でした。

通知機能については上記の通りですが、バッテリーについても重視しています。

こまめに充電するのは面倒だし、使いたいときにバッテリーが切れていると、もはや何の役にも立ちません。

このHUAWEI Band2はだいたい2週間くらいはバッテリーが持つので、前いつ充電したっけな?ってくらい充電しません。

お風呂と料理するとき以外はだいたい着けています。

さらに目覚ましアラームもあるので(音はなりませんが、ブルブル震えて教えてくれます)、家族で同じ部屋で寝ていても、周りを起こさずに起きることができます。

僕は結構寝覚めがいいので、バンドのバイブ程度で起きられますが、爆音の目覚ましでも起きない人は無理かもしれません。

 

難点はバンドが外れやすく、無くしていまう可能性があるので、そこだけマイナスポイントかなと思いますが、とにかく、起こしてくれる、知らせてくれる、長持ちするの3つがあれば自分は満足なので(歩数や心拍は別に興味がないので)、このバンドはとても気に入っています。

 

"「納品」をなくせばうまくいく"を読んだ

ソニックガーデンの倉貫さんの「納品」をなくせばうまくいくを読みました。

 

リーンスタートアップを土台に、エンジニアがいない会社に必要な技術を提供する仕組み、ビジネスモデルを提唱しています。

わざとだと思いますが、タイトルは若干大げさにつけているかなぁと。
納品がなくしてうまくいくわけがない!と内容を読まずに批判する方もいることでしょう。
私も銀行の巨大な勘定系システム担当していたこともあるので、納品しないなんてありえない、と思って、なかなか読んでみようと思わなかったですが、、、

でも読んでみるとタイトルに嘘はなくて
「納品をなくせば”すべて”うまくいく」とも「”すべての”納品をなくせば~」でもない点がミソですね。
これは本の中でキチンと説明していますが、このビジネススタイルが適するのは、スタートアップ企業など、ビジネスが決まり切っていなく、顧客の要望などによって方向転換(ピボット)を繰り返す必要がある企業が対象です。

仕様を決める→作る〜、の開発フローだと、サービスを開始後にユーザーの反応が悪かった場合、修正に時間もお金もかかり、
・企業は時間とお金が無駄になる
・エンジニアはせっかく作ったものがすぐに仕様変更させられる。
・エンドユーザーは使いたいものではない
とみんなが不幸になってしまします。
そのためにシステム納品ではなく、毎日どういう機能が本当に望むものかを検討し、追加していくことでサービスを日々進化させていくことが必要とされます。

そういった柔軟に開発を続けていくモデルを「納品がない」ソフトウェア開発と名付けて実践されています。

お金を稼ぐだけなら、人材派遣や一括受注、あとは運用や仕様変更で追加料金をとるなどが効率がよいのでしょうが、本当に顧客やその先のエンドユーザーのことを真剣に考えたら、納品をしないという選択が最適解のような気がします。

また働く場所をとわず、残業しないなど、エンジニアのパフォーマンスをあげるための理念はすばらしいです。
エンジニアが最高のパフォーマンスを出せる環境を会社が提供することで、結果的に、顧客の満足につながっていく。よいサイクルを生み出すための取り組みなのだと思います。
社員のスキルと人間性を信頼しているからこそできることだと思います。


プロを目指す人のためのRuby入門 の著者の伊藤淳一さんもソニックガーデンですね、このレベルの技術者がごろごろいるソニックガーデン、きっと日本のソフトウェア開発の新しい基準になっていってくれると思いす。