日本最大級のエンジニアコミュニティ Qiita プロダクトマネージャーの
清野 敏生です。この番組では、日本 で活躍するエンジニアをゲスト
に迎え、キャリアやモチベーション の話を深掘りしながら、エンジニア
の皆さんに役立つ話題を発信して いきます。今回からのゲストは、
【ゲスト】ドメイン駆動設計入門 ボトムアップでわかるドメイン
駆動設計の基本の著者 成瀬 允宣さんです。よろしくお願いします。
よろしくお願いします。普段、プログラマー として仕事をしています。所属している
会社は、gmall インターネットグループ 株式会社に所属していまして、普段の
仕事はテックリードみたいなことを やっています。よろしくお願いします。
よろしくお願いします。僕は、本当に ボトムアップDDで、サイトの方も
そうですし、本の方も、すごいいつも 読ませていただいているので、今日
お話しできるのをすごい楽しみ にしていました。よろしくお願いします。
ありがとうございます。こちらも 結構楽しみです。ボトムアップ
DDの名前を久々に聞きました。
そうですね。今もたまに読ませて いただいてたりします。ということで、
成瀬さんとお送りする1回目のテーマ は、25歳からのエンジニアキャリア
です。今日は成瀬さんも、今は結構 設計だったり、そういうところで
すごい有名な方かなと僕は思って いるんですが、そもそもどういう
キャリアを今まで描いてきたのか みたいなところを1回目ではいろいろ
お伺いしていきたいなと思って います。
はい。わかりました。
最初に聞きたいんですけど、これ 毎回聞いているんですけど、プログラミング
を始めたのはいつなんですか。
僕がプログラミングを始めたのは 25歳か6歳ぐらいの頃だったと思います。
そうなんですね。いわゆる大学とか を出た後みたいな、そういう感じ
ですか。
そうですね。僕、大学は諸事情により いろいろあり、業種を変えて、その
後に転職をしたのが25、6。そのときに プログラミングを学び始めた感じ
ですかね。
そうなんですね。じゃあ、もともと コンピューターサイエンスとか
プログラミングをすごい勉強して いたとか、そういうわけではない
んですか。
そうですね。なので、勉強したのは 本当に職業を変えるときの職業
訓練場か、あそこで基本的なC言語 とかJavaを学んで就職しました。
そうなんですね。全然知らなかった です。そうなんだ。差し支えない
範囲で大丈夫なんですけど、もし その前どういうことやってたのか
みたいなところをお伺いできたら いいなと思うんですけど。
僕はもう完璧に建築ですね。
建築だったんですか。
はい。水道工事とかの。職人やって 現場監督やって、絶望して今に至る
と。
そうなんですね。そのときに他の 子、そこでキャリアチェンジをしている
と思うんですけど、プログラマー っていう職業を選んだのは何か
理由あったりするんですか。
自分に友達がSEをやってたから っていうだけの理由ですね。もちろん
話を聞いていて、自分もパソコン 自体は小学校の頃に会金賞をした
お祝いにパソコンを買ってもら ったんですね。インターネットに
繋がらないパソコンで3年ぐらい 遊んでたんですけど、その頃から
パソコン自体には興味があって、 とはいえゲームをやるぐらいだったん
ですけど、IT機器にそれほど危機感 がないからやってみようかなっていう
本当にそれだけのきっかけですね。
そうだったんですね。じゃあもう そこから本当に何も知らない状態
でプログラミングを始めたんですか。 そうですね。やってみたらプログラミング
自体は謎解きをしている感覚 だったんですね。例えば自動販売機
のプログラムを作りましょう っていうのをよくやるじゃないですか
例題で。それに対して自分なりの プログラムを書くっていうのは
もう完璧に問題が与えられて あなたの答えは何ですかっていう
世界の、今もうその延長なんですよ ね。
そうなんですね。
それが楽しくてクイズ番組に答える じゃないですけど、謎々に答え
られるそのようなイメージで仕事 にプログラミング自体が楽しく
なってきたっていう流れでした。
そうだったんですね。結構プログラミング プログラマーとして挑戦していく
最初のときのあるあるで結構その 最初ハードルがあるじゃないですか
本当にプログラミングっていうの を書けるようになるところの最初
のインプットみたいなところが 結構壁で諦めちゃう方とかも結構
いらっしゃる気がするんですけど そこはそんなに苦じゃなかった
ってことですかね。
もう去る十何年前ですか。あんまり 記憶いないですけどそこで苦労
した記憶はないですね。
そうなんですね。
むしろ逆に同じ職業訓練校の同じ 生徒たちに僕も教えたりしてた
のでその頃から多分プログラミング 自体に対しての難しさっていう
のを感じてなかったと思います。
そうなんですね。そこでいわゆる 職業訓練みたいなところでプログラミング
っていうのを習得した後にその いわゆるプログラミング系のお
仕事を始めているっていう感じ ですかね。
そうですね。
最初はどういうお仕事されてたん ですか。
それこそSIRですね。中小企業なんですけど どんな仕事をしてたかで言うと
わかりやすく言うと社長のお友達 のムチャ振りソフトを作るような
仕事ですかね。例えば僕が作った もので差し支えないレベルで言う
と薬膳のおすすめをアンケートから 出すという推薦するみたいなそういう
薬膳ってわかりますかね。中国の 音名陰と陽があって食材は
腰が冷えてるからあったかいもの 食べなさいとかそういうレベル
のアンケートなんですけどっていう 占いプログラムを作ってもちろん
それ使ってくれたんですけど結局 一番重宝したのはそこにそっとつけて
みた肝炎機能が一番使われていた みたいなそういう話をよくやったり
してました。それ以外ですと当時の 会社ですとマイグレーションっていう
のが一番メインの仕事でしたね。どういう マイグレーションかって言うとAS400
ってご存知ですか。
いやわかんないです。
IBMが作ったオフィスコンピューター 俗にオフコンなんですけど昔の
昔の機械です。それとMELCOMっていう 機械がありましてこれも知らない
ですよね。
わかんないです。
三菱が作ったオフコンなんですね。 三菱の作ったMELCOMっていうオフコン
がサポート範囲外になったんで それを新しいやつに乗せ替えましょう
とかそういうマイグレーション をします。これが面白くて三菱の
MELCOMからじゃあどこに行くんだ って乗せ替える先がAS400なんですよ
。いやオフコンからオフコン。どういう ことをやってるかって言うと分かり
やすく言うとコボルに置き換えて 話をします。半角カタカナが使える
コボルから半角カタカナが使えない コボルにマイグレーションする
っていう仕事ですね。こんなような 仕事をしてました。
なるほど。じゃあそこがファースト キャリアってことですね。
そうですね。
そうなんですね。
今にして思えばなんでJavaとかに しないんだろうって思うんですけど
そういう。ちなみになんでこれが こういうことをしてるかって言う
と当時の言語ってどの桁に何を書く っていうのは厳密に決められて
いて例えば三菱の作ったオフコン からIBMのAS400っていうオフコン
にマイグレーションする場合 ほぼ命令の言葉が違うだけで大体
どこの言葉をどこの桁の文字を どこの桁に持ってくればいいっていう
マイグレーションになるんですよ ね。なので非常にマイグレーション
しやすかったっていうのがあって おそらくJavaとかのオープンソース
と呼ばれるものにマイグレーション しないっていうのが多かったな
と思います。ていうかそれが上等 種なんですね。
そうなんですね。すごい今のお話 すごい意外でした。特に設計とか
がすごいできる方って結構いろん なことを過去いわゆる座学的な
ところから基礎からすごいカッチリ やってるのかなと思ったんですけど
まさに現場たたき上げというか 本当に実践の中でいろいろ学んで
きてらっしゃるっていうのがすごい びっくりしました。
そうですね。もう完璧に僕は理論 じゃなくて感覚から入った人ですね
確かに。
そうなんですね。ちなみになんですけど 今GMOさんにいらっしゃるじゃない
ですか。GMOさんではどういうこと やってらっしゃるんですか。
対してかけてるコストだと思える のがすごいなと思いました年収
が下がるって結構大きいことだ と思うのでその決断ができるの
がすごいなって思います
そうですね今はできないですね 一人見だったらできると思います
なるほど確かに
当時はやっぱり10年ぐらい前の 話なんでなんとなくまだ買い手
市場ではありましたねやりたい 人いっぱいいっぱいいたのでっていう
状況がありましただから職業を 通すと年収が下がるイメージですね
今は売り手だから逆に上がるん じゃないですかねそんな気がします
なんかそういう感じでいろんな 業界をホッピングしてきてる
と思うんですけどそれは振り返って みてやってよかったかやっぱり
一つの業界極めればよかったな っていうとどういう感じですか
今生存バイアスなんで完璧にやって きたほうがよかったなと思うん
ですけどエンジニアリングという 分野であればやってきたほうが
いいと思いますテクノロジーという 分野を突き詰めるんであれば要
するに自分技術とか何か研究とか っていうんであれば絶対それじゃない
ほうがいいと思うんですよねそれが 向いてるかどうかその人が研究者
技術がどうかなんですよね僕自身 は今日お話したことから分かる
とおり完璧に現場叩き上げて現場 で汗水垂らすのが結構好きだった
のでエンジニアリング技術だった のでやってよかったなっていう
気持ちはありますいろんなところ の業務知れて例えばガス屋さん
ってどういう仕事してるんだとか 鉄工所に入って鉄工所の業務を
僕が知りたくて1日働かせてくれ っつって鉄工所で働いたことも
あるんですよで鉄工所でどうやって 鉄を精錬していてどういう流れ
で物が動いて何で2回焼くのかとか そういうことを教えてもらったり
体感することでシステムに落とす っていうことをやったりするんですけど
やっぱりあれは一つのことを突き 詰めたらできなかった経験とか
視野だったなと思いますね
ありがとうございますじゃあ本当に さっき練習のところはコストある
意味投資みたいな感じだったん ですけどそこが欠けた価値は今
感じていらっしゃるってことですか
そうですねこれで感じてない って言ったら嘘でしょうね謙遜
しすぎって感じですよ多分ね
ここまでで結構いろいろなこと をやってるってところをお話し
伺ったと思うんですけどいろいろ 挑戦してる中の共通点というか
いわゆる脳汁が出るタイミング というか自分のモチベーション
の源泉ってどういうものだった りするんですか
結構タイミングはまちまちでは あるんですけどやっぱり自分が
思い描いた通りにうまくいった ときは嬉しいですよね何をする
ようにしても全部バータリ的に こうなったってパターンは僕の
場合つかないんですよね何かしら 自分なりにいろいろ考えてやって
るんですよねもちろんそれが拙い 知識かもしれないですけど例えば
僕YouTube始めました当時2020年 かなあのとき2020年YouTubeをやった
理由はちょうどコロナ禍に入って きてこのタイミングみんな巣ごもり
すると思ったで多分カンファレンス も減っていくだろうと見てこの
タイミングで例えば自分がどう やったら面白くできるかって考えて
いってついたのがYouTubeでプログラミング の何かをするだったんですよね
それが一応僕の目論みどおりの 再生回数ぐらいになったりしました
とかあとはもちろんアーキテクチャ もそうですよね僕が将来的に多分
こういうことが起きるだろう例えば みんなよくあるのがコード書き
ましたでいろんな人がコード書いて きます結果的に設計アーキテクチャ
っていうものが意図したものが ぶっ壊されてしまったって嘆く
人を結構見ることがあるんですね それって正直な話で言うと僕ぶっ
壊されたと思ってないんですよ どっちかっていうと守りきれなかった
と思ってるんですよねそれを守る ためにどういう施策が必要なのか
っていうところで例えば2019年の頃 かなに流行ってたクリーンアーキテクチャ
ってあったんですよね
はいありますね
であれ自体は実装こういうふう に実装しなさいっていうものは
ないんですよただ典型的な実装 の例として挙げられてるものが
あってそれをやろうとすると まあまあコードを書く量が多い
なとこれは1からみんな書けって 言われたら嫌がるだろうなっていう
のを予想できたんですよねじゃあ それを嫌な思いするんじゃなくて
そうしたほうが楽になるにはどう すればいいかっていうことを考えて
たんですね今僕も普段やってる のはツールで何とかするって言
うんですけどツールを作ってツール を使うと一気にいろんなコード
がスキャフォルディングされるん ですよねそれ使ったほうが楽じゃない
ですかしかもコードは綺麗になる となので人はやすきに流れるでした
っけそういう言葉がありますけど うまいことみんなそれに沿った
ほうが楽になるよね結果として アーキテクチャが守られました
僕の目の通りだでそのシステム 自体はもう1年2年続いてるんですけど
もっと続いてるかもっと前だだ けど未だにあえてそれを壊そう
としてる人は出てきてないと更新 があってもっていうところはやっぱり
分かるのが1年後2年後なんですよ だから遅れてくるんですよねだいたい
その目論みがうまくいったりとか ある程度結果が出たタイミング
はやっぱり誰でも嬉しいタイミング ですよねそういうときかなとは
思います
ありがとうございました本当に何かを狙い を持ってくわだててそれを実践
してそれの結果が跳ね返ってきた 時にすごい脳汁が出るというか
やってよかったなって思うみたいな 感じ
そうですね今もう1個あったので もう1個言っていいですか
長年掘っておいた言語化しなきゃ いけないことを言語化できた時
脳汁が出ましたなんで継承を使っちゃ いけないという世の中の風潮がある
のに俺はここで継承を使ったんだろう っていうのがたまにあるんですよ
それの言語化がちょっと問われる 時に社内で勉強会してる時にふ
と書いてたらそういうことがあって ことで自分なりに腑に落ちた時
があったんですねもうこれで言葉 で説明できるようになりました
ちょっと今それをメモ見ないと 思い出せないけどでもその瞬間
って自分の中でああ体験してる わけですよね今までうまいこと
言語化できないなそれ暇ないな ってほっといてたんですけどパッ
と話してたらこういうことだね って出た瞬間はやっぱり脳汁っていう
ものが多分出てると思います
なるほどじゃあ何かが腑に落ちる とか理解できること自体も結構
自分自身のこう
そうですね
繰り返りになってるみたいな感じ ですね
理解自体はできてるんですよ多分 感覚的に理解はできてるんだけど
それを言語化する時だと思うんですよ ね
うんうんうんある意味で身に染み つくというか自分のものになった
瞬間みたいな感じ
そうですね誰にでも教えられる 状況っていうのがやっぱり嬉しい
ですね
ありがとうございます
番組ではリスナーの皆さんにも 参加してより楽しんでいただける
ようゲストに質問したいことを 番組詳細欄にあるフォームにて
事前に募集しています採用された ご質問は番組内で紹介し直接ゲスト
の方にお答えいただきますでは 早速リスナーネームsckさんからの
ご質問です
新卒研修について質問です新卒 に伝わりにくいなと感じた内容
があれば知りたいですまたこんな 伝え方をするとうまくいったなど
あれば教えてくださいっていう のが来てますこちらそうですね
以前聞いたカンファレンスですか ねご登壇いただいたときの新卒
研修のお話のところかなと思うん ですがそうですねその中での伝わり
にくいなみたいなところの振り返り とかアドバイスなどあればお願いします
一旦一応持論のお話させていただく と多分なんですけど新卒だから
じゃない気もしますね誰が相手 でも結局伝わりにくいなってとき
はあるし伝えやすいなってこと はあって結局相対的なもので相手
によるっていうのがまず一つ目 なんですよねなので僕新卒研修
とか誰かにものを教えるときは まずその人がどの位置にいるのか
っていうのを観察するようにして ます本当にもちろん新卒研修で
全体に話すときは全体に向けて 話すしかないですけどその後個々
に話し聞いてみてどこまで分かった っていうことを聞くんですねその
ときのコツとしてどこまで伝わった かを自分が知らなきゃいけないん
ですよね分かりやすいやり方って 説明させるのが一番いいんです
よねまず相手の理解度を知るっていう ところから始めてその上で何を
伝えよう特に伝わりにくいなって 思うのは言葉だけ伝えると伝え
にくいなと思ってます普段から 僕やってることで言うとペイント
ってことですか最高のツールなんですけど Windowsしか知らないか何か
お絵かきする無料のツールありません macの方にも
あると思います
いわゆるホワイトボードみたいな やつでマウスで絵描くんですね
それが一番大事で結局言葉だけだ と半分も伝わらないと思ってて
自分なりにやっぱり物事って抽象 的に捉えると絵が描けると思ってるん
ですよその絵を一緒に見ながら 会話するのが大事でホワイトボード
が一番使えるのがいいんですけど 今オンラインの時代なんでリモート
でやるときに僕がペイントを共有 してペイントにマウスで絵を描
いていくんですねすごい後から 見ても誰も分からない絵を描いて
いくんですよでもその時の2人だけ は分かるんですよねでとにかく
言葉だけじゃなくて抽象的な図を メインに会話を進めるっていうこと
をして伝えるようにしています これが一つ目ですかねで二つ目
が逆にやらないことがドキュメント を残したりとか動画を残すっていう
のを僕はあんまりうまく活用できた ことがないです
そうなんですね
やっぱりトレンドが変わってき ちゃうし例えば何かのツール
使うってだけでも動画にすると ちょっと更新があるとみんな逆
に迷っちゃうんですよねどうすれば いいかっていうとやっぱり聞いた
ほうが早いんですよねなので例えば うちの会社で僕がやってること
でいうとそういうチームを作りました よねチームトポロジーでいう
イネーブリングチーム他の人が 何か技術をキャッチアップする
にあたってそれをサポートする チームっていうのを作ってもう
困ったら聞きなさいとまずそこ からだよみたいなことをやったり
はしています新卒研修に関わら ず人に教えるときはこういうふう
にすると結局は対話でしか僕ら は理解できないんだなっていう
のがよく分かるんですよねっていう のやってますかなあと伝わり
にくいことで言うと文字だけだと やっぱり伝わらないですね何度
言っても文字は言ったことにならない と思います
はいでも本当に一方通行で何か を伝えるだけじゃなくてコミュニケーション
取るっていうのが大事そうだな っていう話聞いてて感じました
そうですね結局どのように伝わった かなんていうのは我々には話す
方からしたら分からないのでそれを 確認するっていう相互のコミュニケーション
ですねがやっぱ大事なんだろう なとは思います特に僕なんかさっき
ちょっと言いかけたんですけど 小学校で小学生にいろいろ教えたり
してるんでそういったときでも なるべく一人一人がどういうこと
までやってるのかっていうのは その場1時間しかないんですけど
理解しながらそれぞれに伝え方 変えていくっていうのをやってる
ので教えるほうが辛いですけど こんなことをするとおすすめです
ありがとうございます僕も結構心率 育てたりするときがあるので参考
にさせていただきますありがとうございます あと簡単な例で言うとスマート
っていう指標があって物事を正確 に伝えるためのやり方っていう
のがあったりします中小的な言葉 じゃなくてちゃんと誰が見ても
分かるような指示を出すっていう やり方があったりですねそこら
辺を調べてみても皆さんいいかもし れませんね
ありがとうございますナルセさん今日は ありがとうございました
ありがとうございます
まだまだお話ししたりないので 次回もナルセさんとお送りできれば
と思います今回はナルセさんの キャリアについていろいろお伺い
してきました本当に今までナルセ さんって本当にずっとちっちゃい
頃からプログラムガリガリやって すごいいろんなことインプット
して今のキャリアを築いてらっしゃ るのかなっていうふうに勝手に
想像で思っていたのですごい意外 なキャリアを描いててすごい面白い
なと思いましたかつやっぱりそういう プログラミングとか始めるタイミング
って本当にいつが遅いとかはないん だろうなっていうのは改めて感じ
たところですねさてこの番組では 関数や次回ゲストへの質問リクエスト
などお待ちしております番組詳細 欄にあるリンクよりお気軽にご
投稿くださいXではハッシュタグ 聞いたFMをつけてポストしてください
表記は番組名と一緒でQFMが大文字 残りは小文字ですそしてApple Podcast
やSpotifyのPodcastではレビューも できますのでこちらにも感想を
書いてもらえると嬉しいです 聞いた株式会社はエンジニアを
最高に幸せにするというミッション のもとエンジニアに関する知識
を記録共有するためのサービス 聞いた社内向け情報共有サービス
聞いたチームを運営しています ぜひカタカナで聞いたと検索して
チェックしてみてください来週 も火曜日の朝6時に最新話が更新
されます番組のフォローをして 最新話もお聞きくださいお相手
は聞いたプロダクトマネージャー の木岩の俊文と
なるせいまさのぶでした