ありがとう。また会おう。

ゆるいかんじで。かたのちからぬいて。やってます。

踏み出せば その一足が道となる

ようやく一区切りが着いたので。
今の率直なお気持ちを書き記しておこうと思います。
 
明日から部署異動になりました。
エンジニアという意味では変わらないのですが
今までとは違うスキルセットが求められる現場なので
不安半分ではあるのですが
まぁなんとかなんじゃね、という楽観的な気分も半分で。
思い返すと今までもさんざん無茶ぶりなお仕事こなしてましたし。
むしろ、今までの自分のスキルセットにないものが身につけられるという意味では、楽しみでもあります。
プラス、(異動先にいる)この人と一緒に働いてみたいな、という気持ちもあり。
わがままではありますが、異動させていただきました。
 
 
・・・と、ここまで綺麗ごと並べてしまったのですが(上に書いたのが嘘というわけではないです)
別の側面として
先月くらい、心身の疲弊が激しく、
お休みしたり、通院したり、お薬漬けになったり、それがゆえに集中できなかったりと
しんどい時期が続いて
(花粉症も重なりましたが)
ようやくだいぶ落ち着きを取り戻してきた、というところで、というのもあり。  
 
率直なところ、自分にとって、”Not for me” なことがいくつか重なった、というところがありました。
もちろん、会社にはたくさんの人がいて
それぞれがそれぞれの価値観をもっているので
それら全てが合致するってことはないですし
どの価値観が良い、悪い、ということでもないとは思うのですが でも、自分と折り合えないものを抱えたまま働き続けることが本当にしんどかった、といったところでしょうか。
 
 
で、その状況で当然いろんなことを考えたのですが
そんな折に異動の話を打診していただき
いろんな選択肢を検討した上で、異動を決断するにいたりました。
また、扱うサービスが全く変わることもあり
肩書きもいったん下ろして、一兵卒として再スタートすることにしました。  
 
振り返るといろいろ後悔やらなんやら、ないといえば嘘になるのですが
あまり後ろばかり振り返っていてもしょうがないので。
今は前を向いて。
 
新たな道に踏み出して行きます。
迷わず行けよ。行けばわかるさ。
(このブログのタイトルと、上の2行は、アントニオ猪木「道」より。)  
 
明日から再出発です(異動なんで、転職するわけではないんですけどね) 。
よろしくおねがいします。

#PHPerKaigi に参加した

しまった、2月のLaravel JP Conも参加したのにブログ書いてなかった...

3月29日(金)~31日(日)に開催された PHPerKaigi2019に参加しました。
phperkaigi.jp

f:id:m_norii:20190330095513j:plain

各セッションのスライドやら感想はいろんな人が書いていると思うので。
自分が参加して感じたことをつらつらと。

昨今、やれこの言語が年収高いだの、この言語はオワコンだの
いろんな記事があって
PHPもたいがいこの手の記事では悪い方に書かれるか、
あるいはそもそも書かれもしないか、だったりして
いろいろ言う人はいますよね。

確かに、お世辞にも流行りの言語とは言えないし
昔(PHP4や5.0~5.2の頃、「例えばPHPを避ける」などと言われてた頃)のイメージがいまだに拭えないのとか
いろいろあります。
「イノベーター理論」でいうところの「レイトマジョリティ」かな、とは感じます。

とはいえ、世間で叩かれるほど廃れてはいないし
今年はこのPHPerKaigiも含め、日本全国で8つのPHP関連のカンファレンスがあるわけで
これだけのコミュニティの盛り上がりがある言語が
少なくとも、1、2年で廃れるってことはないんじゃないかな、と思うのです。

もちろん世の尖ったエンジニアは新しい技術が大好きだから
そちらになびかれる、というのもわかるんですが。

ビジネスの課題を最短距離で解決できるツール、ってのも大事だと思うのです。

PHP生みの親のRasmus氏は
PHPは歯ブラシのようなもの。
いつも使う役に立つシンプルなツールだけど、誰も歯ブラシのことなんて気にしないよね。
PHPは問題を解くためのシンプルなツールなのさ」
と言っていて、僕はこの言葉が好きです。

それに極端かもしれないけど、どんなにすごい技術使ったって
何かのビジネスとしてお金を産まなければ意味がない。
その意味で、PHPもまだまだ捨てたもんじゃないんじゃない、と思っています。

なんか全然カンファレンスの内容関係ないブログになってしまった💦
少しだけちゃんと内容触れておきます。

個人的には、(皆さんの発表ももちろんよかったのですが)
PHPerチャレンジ、徳丸先生の挑戦状、DDDとクリーンアーキテクチャの相談会がとても良かったです。
徳丸先生の挑戦状、robots.txt に気づけなかったのが悔やまれる...
良くも悪くも?最近仕事では PHPMyAdmin なんて触る機会無くなってきたので、すっかり抜けてました。

DDDとクリーンアーキテクチャの相談会、こういう設計に関する話題って
なかなかフォーカスされないけど、実はすごく大事だと思っています。
そもそもこの辺、プログラム言語関係ない話だし
このあたりの知識入っていれば、言語関係なくある程度どんな仕事でも渡りあるけるんじゃないかなと。
逆にこのあたりの設計知識ないと、どんな最近の流行りの言語でも、スパゲッティな実装になるんじゃないかなと。
言語に依存しないプログラム設計の話は、もっともっとフォーカスされていいのではないでしょうか。

最後に、PHPerKaigi2019 という素晴らしいカンファレンスを
運営したスタッフの皆様、協賛したスポンサーの皆様、ありがとうございました!
来年もぜひ!期待しています!

2018年振り返り

2018年もあとわずかになりました。
今年一年ざっと振り返ってみます。

3月9日、10日 PHPerKaigi2018

phperkaigi.jp

所属会社が初めてスポンサードすることになったイベントでした。
(会社名ではなくメインサービスの「エキテン」名義で)
きっかけは僕がPHP勉強会でぽつんと呟いたことがいろいろ繋がってのことだったので
後から思うと「言葉にする」って大事だな、と感じました。

総括

今年なんといっても印象深かったのはPHPカンファレンス2018ですね。
スポンサーとしてブース参加ももちろんですが
おそらく今までで最高の人数の前でLT登壇しまして
現地でも社内でも概ね好感触だったのですが
その後、はてなブックマークのホットエントリー入りもはたしまして
今日現在で366ブックマークまで行ってました。
たくさんの人に見ていただけたのはありがたいなと思っています。

来年もすでに会社でスポンサーするイベントが2つ決まっているので
引き続きコミュニティイベントへの参加は継続していきたいなと思います。
あと、今年はLTばかりだったので、もう少し腰据えた時間枠の発表も機会作れたらいいかなと考えています。

今年1年間ありがとうございました。
来年もよろしくおねがいします。

PHPカンファレンス2018でスポンサー参加&LT登壇した #phpcon2018

毎年楽しみにしているPHPカンファレンス、今年も参加しました。
phpcon.php.gr.jp

ここ10年くらいは毎年、ではないけど概ね参加しているはず。
しかし今年は例年と大きく違うことが2つありまして。

まず、自分の所属会社がスポンサー協賛することになりました。

自分は今の会社が7社目なのですが、今までこういうイベントに協賛するような会社で
働きたいと常々思っていたのですが
過去の所属会社では様々な事情で難しく
約1年前に転職した、現職にて実現したことが本当に嬉しく。
(スポンサーしましょうよ、と、しかけたのは他の誰でもなく自分なのですが)

幸いにもたくさんの方にブースに訪問頂き
用意していたノベルティの「エキテンドロップ」(先の写真テーブル左に積んでるやつ)が
午後早めの段階で品切れてしまいました。
なかなか需要の読みは難しいですね。

「エキテン」というサービスがどの程度認知されてるのだろう?
(そもそも認知度低いという問題意識あるからこそ、スポンサー参加を促したんですが)
と、不安で、事実まだまだだな。。。と感じることも多かったのですが
なかにはご利用いただいているユーザの方もいて、スタッフ一同感動していました。
(普段、店舗オーナー様の声を直接聞く機会はあるんですが、エンドユーザの声を聞く機会はなかなかないので
 ほんとうに貴重な体験でした)

そしてもう一つのPHPカンファレンスでの初体験が、LT登壇でした。

PHPカンファレンスのLTは、その前までは複数トラックに分かれてセッションしているので
1セッションあたりの聴講人数って限られているんですが
LTは他の平行トラックがないので、みんな集まってくるので
人数どのくらいいたのかな。。。ちゃんと数えたわけではないですが、300人前後はいたんじゃないでしょうか。
普段数十人くらいの勉強会では登壇することは時折あったのですが
この規模はさすがに初めてで。。。

とかちょっと弱気にもなったり。

あと、自分の発表は12人中6人目だったのですが
タイトルざっとみると、結構みんなガチな内容のLTが多く
「うわ、もしかして私のLT、浮いてる?」
と、さらに弱気にもなってみたり。

そんなこんなでド緊張の中、なんとかLT5分間、やりきりました。

www.slideshare.net

動画はまだ正式なものではなく、のちほどセッションごとに編集されるとのことですが
ライブ配信の編集前動画があるのでいったんこちらを貼っておきます。
自分の発表は 7時間9分くらいのところからです。
www.youtube.com

正直、この発表でまた賛否両論出てくるかなと不安で
予防線として、この発表に対する「アンサーLT」ともいうべき資料も、当日急ごしらえで作って
懇親会LTか、12月のPHP勉強会でしゃべろうかと思ってたのですが
Twitterの #phpcon2018 のハッシュタグ見る限りは、好意的な受け止め(と、単純に面白がっていただけたの)が多く
どうやら必要なさそうなので、アンサーLTはお蔵入りにしようかと思います。

で、発表自体はかなりネタに寄せて、随所に笑いを取りに行くようにしていたのですが
なぜこのネタでLTをしようと思ったところについては、真面目な意図もあったりします。

実は「クソコードがダメなら、遺憾コードって呼んだらよくないか?」というのは
約1年前くらいに、Twitter上でこの議論がまた盛り上がっていたときに、投稿したものでした。
一番古いTweetはこれ。

ですが、当時は(というか、今もですが)大したフォロワー数もいない自分では
それが拡散されることもなかったのです。

で、もう一つのきっかけが、ある時社内のSlackチャンネルにて
弊社の「エキテン」というサービスも、もう12年も運用しているので
やはり中には「いったいこれはどういう意図でこのような実装なのか?」と首を捻りたくなるコードが
ときおりあるんですね。
で、それを、クソコードもそうですが、ややきつい言葉で発言するようなことがあり
そのSlackチャンネルはエンジニアしか参加してなかったのですが
たまたまそのチャンネルを非エンジニアの人が見たらしく
「ちょっとあのチャンネル気分悪いよね」と指摘されたんですね。
つまり、スライドで発表したような「不毛な議論」が、社内でも再燃したと。
(社内でもやはり、「ダメなものをダメと言えないとダメでしょう」という意見もあり、なかなか消火に苦労しました)

で、このときにすごく思ったのが
「コミュニケーションの非対称性」で。
ある人が「クソコード」という言葉を、あくまでコードを批判する目的であって
人格攻撃ではない、と言ったところで
それを受け取る側が、必ずしもそうは解釈しない、ということです。
さらには、上記であげたSlackチャンネル、最初はエンジニアの中でもごく少数で忌憚ない意見を言う場だったのですが
Slackチャンネルは過去ログも追えるわけで
後からジョインした新入社員がそのログをみたらどう思うか、という視点も必要だなと考えるにいたり。

なので、ダメなものをダメと指摘するのは大事なんだけど
【公的な場での】言葉遣いはもっと意識しないとコミュニケーション上問題が起きるよね
それなら、どういう言い換えならもっとも適切かつ定着するだろうか、という思いで
今回の「遺憾コード」という表現、これをもう一度推したい
でも推すならば影響力大きいところでやらないと意味が無い
そこで、気づいたわけです。PHPカンファレンスがあるじゃないかと。

というのが、今回のLT発表に至った経緯でした。

まぁ、言い訳ではないですが、たとえ「遺憾コード」が定着しなくてもよくて
僕もいたずらに言葉狩り、言葉遊びをするつもりはないのですが
でも、「クソコード」って表現は、
ある程度関係値ができあがっている、閉じた仲間内で使う分にはいいけど
その言葉が届く範囲には十分気をつけないと、
想定してないところから刺されることあるから、
口から発する言葉には十分注意したほうがいいよ
というのが、真に訴えたいことでした。

とはいえ、この発表がそれなりに好評いただけたこともあるので
これからは「遺憾コードおじさん」と名乗っていくかな(笑)
そう言っていれば、みんな時折思い出してくれて、それが言葉の定着に繋がる・・・かもしれないし。

最後に、長年にわたりこのような最高のエンジニアコミュニティイベントを運営している
日本PHPユーザ会の皆様、イベント運営スタッフの皆様、本当にありがとうございました。
また、LTリハーサルに付き合っていただいた社内メンバーにも御礼申し上げます。

「レガシー感謝の日」というイベントでLTした

askul.connpass.com

先日こちちらのイベントに参加してLTしてきました。

www.slideshare.net

タイトルの「人のレガシーを笑うな」、もうほぼ出オチですね。
元ネタは2008年に映画化された「人のセックスを笑うな」です。
松山ケンイチ永作博美が出てたやつですね。って、僕はこの映画見たことないんですが。。。

最初、このイベントを知ったときに
「レガシーに花束を」という副題?がついていて
これは「アルジャーノンに花束を」が元ネタと聞いて
きっとなんか映画つながりでなんか僕の中でつながったものがあったんでしょうね。
突如このタイトルが頭に降ってきて、タイトルから中身を決めてった感じです。

でも実はその発表の内容が前日までほぼ白紙でちょっと焦ってました。
で、前日朝の通勤電車の中で、ひとりブレストをやったのですが
そしたら急にアイデアがわっさわっさでてきて。
スライド前半のこんな環境がレガシーかな?ってイメージは、このときに溢れ出てきたものでした。
(いちばん受けがよかったのは NULLGWDOCOMO ですかね。懐かしいですね。もう関わりたくないですが)

で、スライドの後半に繋がるのですが
この内容で言いたかったことは
「レガシーがあるからこそ今がある」ってことなんですよね。
他の方の発表でも、いわゆるクソコードとかあるよね、的な話がありましたけど
でもそれらがお金を稼いでくれたおかげで、今の我々がいるという事実は受け止めないと。
その上で、じゃあそれをどう未来に繋いでいくかを考え、実践していくのが我々の責務ではないかと。

ただ、残念ながらすべての現場でそれができる、とは限らないと思ってて。
それがスライド最後半にある、「理解のない現場」の話で。
そうなったらどうするか?
自分には答えが見つけられなくて「撤退戦」と表現しちゃいました。
(ちなみに、元のアイデアでは「逃げるは恥だが役に立つ」と書いてたのですが、
 テイストに合わなくなったのでボツにしたのですが、いいたいことはこれでした)

特に今の御時世、エンジニアは引く手あまた、超売り手市場なんだから
そんな理解者のいない現場でモヤモヤしているより
You, 飛び出しちゃいなよ!・・・という意図を込めたつもりですが伝わりにくかったかも。
(まとめのスライドに書いた「あなたを必要としている人がいる」ってとこですね)

で、あと2つほどネタばらしをしておくと
後半スライドにでてくる「未来を作るのは君のたった今」は
GAKU-MC「昨日のNo, 明日のYes」の一節です。
(歌詞カードに書いてないとこなんですけど、最後のリフレインのところにでてくる)

あと「どこかにあなたを必要としている人がいる」は
Mr.Children「終わりなき旅」ですね。
本当の歌詞は「どこかに自分を必要としている人がいる」なのですが
ライブではここをしばしば「あなたを」に歌詞を変えて歌うんですよね。
これがライブ現場で聴くとめちゃくちゃ感動するんですよ。

ちょっとそんな仕掛けをいれてました。

今回素敵なイベントを主催していただいた
daisuke sato@ASKUL (@dskst9) | Twitter さん、ありがとうございました!

転職して1年経ち、チーフテックリードになった。

はやいもので、デザインワン・ジャパン に転職して1年が経った。

幸い、働く環境、仲間に恵まれて、この1年は自分のエンジニア人生の中でも
一番心穏やかに、エンジニアリングに集中できたと感じている。
これは本当に感謝しかない。

ただ、1年勤めてきて、大きく2つほど課題を感じていた。
1つはサービスインして11年経過した エキテン サービスの
積もり積もった技術的負債をどう解消するか、といった技術的な課題。
もうひとつは、組織的課題としてエンジニアのキャリアパスが明示されていないこと。

で、そのうちの後者、組織的な課題について
社内でエンジニアのマネージャーの方々や人事の方とも話した結果
11月からあらたに「チーフテックリード」という肩書きを持つことになった。

チーフテックリードとはそもそも何?というところでいうと
簡単に言えば、エキテン というプロダクトについてのCTO、という立ち位置。
なお、 弊社には他にもいくつかプロダクトがあるので、
あくまでエキテンという1つのプロダクトについて技術的なハンドリングに責任を持つことになる。

以前、Facebookに書いたことがあるのだが
弊社のエンジニアチームには、いわゆる エンジニアリングマネージャ、 組織的問題を解決するロールの人は複数名いて
そちらの方面については心配はなかったのだが
技術的な課題をエキテンプロダクトとして判断し、推進するという立場がなく
それがいまいち方向性を打ち出せていなく
また、若手のエンジニアメンバーも自分がどういうキャリアを今後積んでいけばいいか
というものが示せていなかった、という問題意識があった。

なので、今回の件で特にマネージャ陣や人事の方と話していてお願いしたのが
マネージメントラインとは別軸の、専門性をもったキャリアパスを作る
そのうえで、何か明示的な肩書きをつけて、ちゃんと組織図や名刺にも明示させてほしい、ということだった。

今回はれてそのような運びになったので、
11月から、ちょうど勤務2年目となるタイミングでもあるし、気持ちを新たに邁進していこうと思っている。

で、「チーフ」テックリードがあるということは、
「チーフ」ではない「テックリード」もあるの? というところが
実はまだ詰めきれてなくて、近々の課題なのだが
個人的には、テックリード、あるいはサービス寄りのサービスリードも含めた
リードエンジニア、をこれも明示的にしていきたい、という思いがある。
このあたりを整備していけば、若手メンバもキャリアパスとして
技術に尖るのか、マネジメントに行くか、あるいはプロダクトマネージャーという道もあろうかと思う。
ここは引き続き社内で整備を進めていきたい。

また、この役職の話と直接は関係ないが
1年前に入社した頃から、社外エンジニア向けイベントへのスポンサー参加、というのを推進していた。
2018年3月の PHPerKaigi 2018 にスポンサー参加した。

このあとは、12月の PHP Conference 2018
2019年2月の Laravel JP Conference
2019年3月の PHPerKaigi 2019 にスポンサーすることが決定している。

まだまだエンジニア界隈では 弊社の社名もサービス名もまだまだ認知度が低いと自覚しているので
まずはみなさんに知っていただくフェーズだと思っている。
上記カンファレンスに参加予定の方は、ブースや配布資料にて
ぜひ名前だけでも覚えていただければ嬉しく思う。

なにはともあれ、入社2年目、気持ちを新たに全力で様々な課題に取り組んでいく所存だ。
社内の関係各位の方々、今後共お願いします。

「Clean Architecture」読了

Clean Architecture 達人に学ぶソフトウェアの構造と設計

Clean Architecture 達人に学ぶソフトウェアの構造と設計

素晴らしい本だった。今年自分が読んだ本の中で間違いなくNo.1。

自分はけして本を読むのが速い方ではないのだが、この本はとにかく面白くて
続きが読みたくて、あっという間に読み切った。(それでも1週間かかったので遅読だろう)

概念と実例がほどよいテンポで混ざっているのが良い。
Clean Architectureとかヘキサゴナルアーキテクチャとか、今までなんとなく理解していた気でいたけど
この本でだいぶ腹落ちした気がする。

読んだだけで満足してたのではだめなので、実践していきたい。
とりあえず思い浮かんだのは、今まで業務で関わったシステムを
この本の理論に従って再構築するとどんな設計になるか、思考実験してみようと思う。

あと、おそらくこの本は、業務でしばらく経験したあとにもう一度読むと
また学びが得られそうな予感がする。
そう、いわゆるスルメ本。噛めば噛むほど味が出そう。

職場にぜひ1冊おいて、若手から中堅、ベテランまで読んでほしい一冊だった。