山崎良祐といいます。Techouse で技術開発統括責任者として働いています。
これからよろしくお願いします。
わたしの取扱説明書です。
あなたとはできるだけ長い間いっしょに働きたいと思っていますが、永久にいっしょに働けるわけではありません。限られたその時間のなかで、できるだけ早いうちに快適になってもらえるといいなと思っています。そのために、ここに書いてあることを活用してください。
もっとストレートに書くとこうなります。
「これを読んで、うまく私を使ってください」。
それから「私がどんなふうに考えているのか、何を大事にしていたいのか、どんなふうに働いているのか」をこの文書で伝えたいと思っています。そしてお互いをより理解し、よりよい関係にできればと思っています。
この文書は必要に応じてときどき更新をします。きっと書き忘れていたことも出てくるでしょうし、考えが変わってくることも出てくるでしょう。そんなときには commit history をたどってみてください。
この文章では下記の言葉について特別な意味を付与しています。他の文章や一般的な日本語で使われる場合と違う意味を付与している場合があるので、注意してください。
- 「〜と思っている」「〜と考えている」
- 私自身がそう思っている/考えているだけのことで、他の人にとっては違う見解もあり得るし、自分自身も考えが変わりうることを明示しています。
- 「〜してください」
- 私からのささやかなお願いごとであって、ルールではありません。必ず守ってほしいというわけではありません。
私の役割は日々変化していて、一貫したものが存在しません。
それでも無理に書くと、こういう抽象的なことになります。
- 長期的な視点から、事業面で優位となるよう戦略的に技術組織・技術スタックを構築します。
- いろいろな可能性や変化を想定しつつ、チャンスと不吉な予感の両方を嗅ぎ分け、常に先んじて策を講じます。
- 技術のパワーを使って会社全体の生産性と、プロダクトの価値を最適化します。
- 何がよいことで、何がよくないのか、という判断の軸を提示します。
- ひとりの技術者として手本となるよう振る舞います。
これらのことのために、必要なことを何でもやります。
- Techouse は大きな目標をもったスタートアップです。そのために必要なことは自分にできる範囲と、自分に得意なことと、限られた時間の範囲内でベストと思えることを何でもやりきるつもりでいたいと思っています。その範囲は技術に限らず、あらゆることが含まれるでしょう。
- 「要望を受けた通りに高速に開発する」ことが技術者のゴールではない、と考えています。高速にコードを書くことと、価値あるプロダクトを世に送り出すこととは違います。技術というものはそれ単体で存在するものではなく、それを使って幸福となる人がいて、初めて価値あるものとなるのです。だから、私は価値にフォーカスした技術者組織を作り出したいと思っています。
- 世界のために、ひとりでも優秀な技術者を育てたいと思っています。私といっしょに働いていただく方には、基礎的な知識を大事にすることはもちろん、心構えや技術者としての倫理観も含めて全員に一流の人物になってほしいと思っています。そのために必要な環境をつくります。
- スクラムチームに権限を委譲し、チームの学習と成長をサポートし、チームの判断を尊重します。
- あなたがプロフェッショナルとしてなすべき挑戦をサポートし、その結果として発生した失敗は許容します。
- 未来に希望を抱きながら、同時に厳しい現実と向き合います。必要とあらばハードな決断をします。
- もし技術的に間違ったことを言うことがあったら厳しく反論してください。
上下関係が技術をゆがめることはあってはなりません。
私は、技術に対して誠実に向き合いたいと思っているひとりの技術者です。間違ったことを平気で言うような存在でいたくありません。 - 私のご機嫌取りは、あなたの仕事ではありません。
そんなものよりも、あなた自身の人生観や職業的倫理観を、そして顧客に対する誠実さを、最優先にしてください。
(私への態度や言葉づかい・おべっかの類が、評価にポジティブに影響することはありません。) - 良いと思ったこと、必要と思ったことは私に反発してでもやってください。遠慮は不要です。
(私もそんなふうに上司に反発してきたので、その報いを受ける番が来るものと覚悟しています。)
必要があればいつでも Google Calendar に予定を入れていただいてかまいません。翌日以降かつ業務時間 (10:00〜19:00) であれば、カレンダー上で空いている時間をいつでも抑えてセッティングしてください。業務時間外であれば前々日までにご相談いただければ大丈夫です。
緊急のことであれば予定を抑えず座席にまで来ていただいてかまいません。緊急の問題は急いで解決しないと取り返しがつかないことになってしまいますから、ためらうことはありません。携帯電話で呼び出していただいても大丈夫です。仮に誤報であってもかまいません (誤報であったとしても、あとから異議申し立てをすることはしません)。
休日や夜間には Slack を DnD (Do not disturb) モードに設定していることがあります。これは限られた休日の時間を家族や自分自身と向き合うための大事な時間と思っているからです。Mention を飛ばしていただくのはかまいませんが、通知 (Notification) は飛ばさないようにお願いしたいと思っています。休日が明け次第、まとめて確認します。
その一方で、自分自身が休日中に Slack に何かを書き込むことはあります。それは自分に充てたメモであったり、たまりすぎてしまった仕事をいくらか消化するためのものです。あなたに関係する内容を Post しても、「いますぐ対応してほしい」という旨の言葉が付記されていない限り対応する必要はありません。
Slack の私の Channel に、わたしが普段から考えていることを書き込むようにしています。ぜひ見てみてください。
Slack の Direct Message でメッセージを頂戴した場合には、適切な Public Channel に誘導しますので再度そちらで送信をしていただきます。(Public な場でやりとりをするのが不適切な場合を除く)
電子メールは1日1回しか確認してません。基本的には Slack にてお願いします。
毎月1回、最低でも30分間の個人面談をお願いしています。
この時間はあなたに向き合う、あなたのための時間です。その他に目的はありません。話す内容は自由です。業務やキャリア、悩みごとなどなんでも話してください。仕事の内容や進め方について、キャリアについて、チームの雰囲気について、家族について、趣味について……とくに何でもかまいません。話したくなければ話さなくてもだいじょうぶです。
もし解決策をいっしょに見つけ出したいと言っていただければ自分にできる範囲で、ときには自分にできる範囲を超えてでも協力したいと思っています。
(内容自体は、業務の改善以外のことでも大丈夫です。あなたが「人としてよりありたい姿」になるためのお手伝いをしたいと思っていますし、そこまでいけなくてもあなたの心を支える土台になれたらと思っています。それは決して「業務に関係するところ」や「改善したいところ」だけをクローズアップして達成できることではないはずだと信じています。)
ただ単に聞いてほしいというだけのときには、そう言っていたたければ肯定も否定もせずに聞きます。遠慮なくそう言ってください。
そういう種類の会話が建設的でないと思う方、ムダと思う方もいるかもしれません。私もかつてそうでした。 しかし今、私はそれが時として人の心を大きく支えるものになりうると知っています。ですので、そうさせてください。
改善をするというのは「嫌なもの」「問題があるもの」と向き合うことでもあります。それはそれで大事ではあるのですが、やりすぎると心が疲れます。水滴が石を穿つように、とても時間ががかる問題もあるでしょう。改善しようと思っても改善できないような問題、たとえば性格上の問題だってあるはずです。問題を意識するのは当然大事ですが、過ぎたるは及ばざるがごとしと言います。そんな問題とは向き合うべき時がきたら向き合えばいいと思っています。
基本的に内向的で、人見知りをするタイプの人間です。 (そうでないと言われることもありますが、そう見えるとしたら後天的にいろいろな工夫を積み重ねてきた結果です。)
そういうこともあって、社内行事にはあまり参加しないほうです。特に、スポーツをするイベントや、ウェーイ系の飲み会は好きではないです。断ることが多いと思いますが、それはそういう性質の人間なので、すみません。
- 目標志向
目標志向という資質を持つ人は、目標を定め、そ目標にに向かってまい進し、目標達成に必要な修正を行うことができます。優先順位をつけてから、そのとおりに行動します。 - 戦略性
戦略性という資質を持つ人は、目的に向かうための選択肢を想定することができます。いかなる想定に直面しようとも、適切なパターンと問題点を直ちに予測することができます。 - 自我
自我という資質を持つ人は、他人の目から見て非常に重要な人間になることを望んでいます。独立心に富み、人から認められたいと思っています。 - 内省
内省という資質を持つ人は、頭脳活動に多くの時間を費やします。内省的で、自分の頭の中で考えるのが好きで、知的な討論が好きです。 - 最上志向
最上志向という資質を持つ人は、強みを利用して、平均的ではなく最高の水準を、個人ないしは集団において追求します。単なる強みを最高レベルのものに変えようとします。
いくつかの性格分析サイトの結果を載せておきます。
高校生のときにハッカーになろう (How to become a hacker)を読んで、そこに書いてある5つの「ハッカー的心構え」に感動し、いまも自分の信条として大事にしています。
- この世界は解決を待つ魅力的な問題でいっぱいだ
- 同じ問題を二度解くような無駄はいやだ
- 退屈と単純作業は悪
- 自由は善
- 心構えは技能の代用にはならない
詳しくは上記文書を読んでみてください。
このほかに私の信条がいくつかあります。ものすごく当たり前なことのように思われるかもしれませんが、とても大事にしていることなのです。
- できないことを「できる」と言わない。できることを「できない」と言わない。
- わからないことを「わかる」と言わない。わかることを「わからない」と言わない。
- 「わかんないけど、なんかこれでいいや」という考えは技術に関しては存在してはならない。
ひとつのことを深くずっと考え続けることができます。ひとつのバグを1ヶ月近く追いかけたこともあるくらいです。
年単位にわたる計画や構想を考えるのは好きですし、それによって今までうまくやってきたことは多いです。そのことを組織の構造や技術のあり方など、いろいろな面でうまく使っていけたらいいなと思っています。
勢いに任せて集中力と体力を一気に投入して物事を短期に片付けるのは大好きです。ときどき(数ヶ月にいちどくらい)、そのモードに入ります。信じられないくらい深夜まで作業をしていることがあります。もちろん、あなたがそれにつきあう必要はありません。
緊急対応が必要な非常事態の対処がうまいです。なんども危機を乗り越えてきました。
必要とあらば、最短ルートで非常事態を収拾するため、あらゆることをします。微に入り細に入るマイクロマネジメントもしますし、ときには強い言葉であなたを叱ることがあります(危険な操作をしそうになったときには特に)。そんな非常事態にならないよう、お互いがんばりましょう。
朝型人間なので、深夜の飲み会や作業は苦手です。
酒量が多いほうではありません。安い飲み放題よりも、いいお酒を少しだけ飲むのが好きです。
3D 酔いします。
私は、いちどはプログラマとして現役であることをあきらめたほどの、ひどい腱鞘炎持ちです。
オーバーワークの後はキーボード・マウスから手を離すため、一時的にスマートフォンを使って業務をすることがあります。(フリック入力と音声入力のおかげでプログラマとしての寿命が延びたと思っています。)
スマートフォンをいじくっているときにはそういうことをしていると思ってください。
- 掃除・整理整頓・食器洗い・トイレのハンドソープを詰め替える作業などは大好きです。勝手にさせてください。
- 細かな細かな改善も大好きです。費用も小さければ効果も小さい、そんな改善も積もれば大きなものになると私は思っています。
私に対してこうしたほうがいい、ああしたほうがいい、というところはぜひ教えてください。気がついたときにいつでも大丈夫ですので、Slack の Direct Message にてお願いします。改善するときにやりすぎたくないので、「直さなくていいところ」「良いところ」も教えていただけると助かります。
私もひとりの人間であり、単独では不完全な存在です。フィードバックはとても大事に思っています。ぜひお願いします。
物足りないという声があったので追記しておきます。
別ページにまとめました -> HISTORY.md
- 読書 (技術書、近現代の歴史書、小説)
- ときどき小説を書きます
- 2007/4 - 2014/9: 株式会社インターネットイニシアティブ (IIJ)
- 私のファーストキャリア。ルータのファームウェアの開発から始まり、ルータをクラウドからマネジメントするシステムも作りました。ゆえにネットワークエンジニアでもあり、プログラマでもありました。ルータを作るというのは要するに OS を作るということなので、 OS から Web まで広いレイヤのことを学びました。
- イベント向け Wi-Fi の企画・設計・構築もやってました。チームを作って、広報を巻き込んで、プレスリリースも作って、大げさなお祭りにしました。
- なんでもがんばりました。
- 2013/6 - : 文学フリマ事務局
- これは仕事ではなく、ボランティアです。私がジョインしたときは停滞期だったのですが、システムを全部作り直して全国展開と参加者増のための施策を推進しまくりました。新型コロナウイルスの直前時点では年間動員数2.5倍、出店数2.8倍、年間開催数5倍、スタッフ人数10倍になってました。
- なんでもがんばりました。
- 2015/7 - 2020/2: SMN 株式会社 (旧ソネット・メディア・ネットワークス株式会社)
- アドテクの開発をやってました。おそろしい量のトラフィック(秒間300,000リクエスト)をさばかないといけないので、何度も死ぬかと思いました。謎の原因 Java VM が死んだり、MySQL が止まったり、といろいろありましたが全部原因究明して対処しました。パフォーマンスチューニングもやりまくりました。入社してから退社するまでサーバの台数を増やさずに済んだのは本当に奇跡みたいです。
- なんでもがんばりました。
- MySQL Connector/J 5.4.10
- 名前が載ってます。MySQL の通信を16進数でダンプして目で解析してバグ修正してました。辛かった……。
- net-ssh (Ruby用SSHクライアント)
- hmac-sha2対応・CTR暗号モード対応。Vagrant, Capistrano 等で利用されてました(今でも動いてるのかな、わからない)
- activeldap (Ruby用LDAPアダプタ)
- JRuby対応・JNDI対応。
| Date | Publisher | Title |
|---|---|---|
| 2019/4/14 | 同人誌(技術書典6) | ようこそ就活工学研究所へ〜現役Webエンジニアの視点で見る幸福のための就活論 |
| Date | Event | Slide |
|---|---|---|
| 2018/12/15 | JJUG CCC 2018 Fall | 200,000 Req/sec をさばく広告入札システムを支えるパフォーマンスチューニング術 ※共同発表 |
| 2016/12/4 | JJUG CCC 2016 Fall | Javaでつくる低レイテンシ実装の技巧 |
| 2014/11/12 | 大阪府立大学現代システム科学域知識情報システム学類 講義 | 情報システムのインフラのいまどき (スライド非公開) |
| 2012/9/24 | SanSan x IIJ合同勉強会 | 電気羊は疎結合の夢を見るか? (スライド非公開) |
| 2012/8 | 東京都三鷹市 中高生Ruby教室 | スライド非公開 |
| 2012/8/2 | 岩手県大槌町 中高生Ruby教室 | スライド非公開 |
| 2012/3/31 | Geek Day Tokyo 2019 ※リンク切れ | やっとわかったタイピングスピード向上のコツ |
| 2012/3/29 | Webサーバ勉強会#5 | Apache 2.4新機能 "SSL編" |
先輩にナメられたくなかったので、2012年〜2013年にかけて全力で資格を集めました。
知識を広く浅く得られたのでとてもよかったと思います。
| Date | Name |
|---|---|
| 2021/4 | 情報処理安全確保支援士 (登録番号021306) |
| 2019/7 | TOEIC L&R Test Score 935 |
| 2018/11 | AWS Certified Solutions Architect - Associate |
| 2013/12 | 情報セキュリティスペシャリスト |
| 2013/11 | 日商簿記3級 |
| 2013/6 | MCPCモバイルシステム技術検定1級 |
| 2013/6 | データベーススペシャリスト |
| 2013/4 | JSTQB Foundation |
| 2013/2 | 第一級陸上特殊無線技士 |
| 2013/2 | 第二級海上特殊無線技士 |
| 2013/2 | 電気通信主任技術者(伝送交換) |
| 2013/1 | ビジネス実務法務3級 |
| 2013/1 | 初級ソフトウェア品質技術者 |
| 2012/12 | ネットワークスペシャリスト |
| 2012/12 | 工事担任者AI・DD総合種 |
| 2012/12 | 技術士1次試験合格 |
| 2012/10 | Oracle Certified Java Programmer, SE 6 |
| 2012/9 | ITILv3 Foundation Certificate in IT Service Management |
| 2012/9 | 危険物取扱者 乙種4類 |
| 2012/7 | 第三級アマチュア無線技士 |
| 2012/6 | 応用情報技術者 |
| 2012/2 | Ruby Association Certified Ruby Programmer Gold |
| 2012/2 | LPIC-3 Specialty LPI-302 Mixed Environment (失効) |
| 2012/3 | CCNA (失効) |
| 2003/12 | 普通自動車運転免許 |