#077 トップ企業の新人研修から学ぶ「ソフトウェアエンジニアとしての姿勢と心構え」 ~前編~
2022/9/25 ·
-
トップ企業の新人エンジニア研修資料を見よう!イエーイ!っていう企画なんですがピンとこないピンとこないでしょ?今日はですね一流企業が世の中の一流企業が新人エンジニアに対してどんな研修をやっているのかっていうのを
-
見つつ 開示の解説を見つつっていう入れつつっていう回ですはいはい 確かにトップ企業の教育の仕方は気になる気になるでしょうかけ出しの人いっぱいいると思うんですけど独学でやってたりとかプログラミングスクールでやるのが多いのかな普通そうですねそんな中今日はリクルートでT和田さん和田拓人さんがやってたソフトウェアエンジニアとしての姿勢と心構えっていう
-
研修資料を一緒に見ていければと思いますはいはいはいまずTワザさんしてますか?まあ聞いたことはテスト駆動開発とかSQLアンチパターンとかプログラマーが知るべき97のこととかもう名著者すげえすげえ中すげえの人僕も一応ツイッターフォローしてますねその資料なんで間違いないと思いつつつまんなかったら俺が悪いですねえ
-
そんな中でまずリクルートなんですけどリクルートなんですね今回はGoogleやマイクロソフトじゃないんかいと思ったあなた大した企業じゃないんですかそう思うあなた結構すごいぞここもっていうところを言いたいんですよどんなイメージありますリクルートって何やってる会社なんですか人材派遣みたいので頑張ってる会社かなっていうイメージですねそれはメインストリームであるんですけど
-
新規事業作るのがとにかく上手い会社なんですよねリクルートってそうなんですか初耳ですSUMOもリクルートだしそうなんですかZEXYもリクルートだしスタディサプリもそうだしホットペッパーもそうだしJALANもそうだしエアペイもそうなんでめちゃくちゃやばいですねそれ聞くとめちゃめちゃやばいリクルートっていう会社は人材派遣とかタウンワークだっけずっと
-
ゼクシーもそうだけどフリーペーパーでやってた会社なんだけどこのままじゃダメだっていう業務転換があってITを使った新規事業をめちゃくちゃボンボン生み出すっていうのに振ってそういう新規事業をめちゃくちゃ
-
作るのが上手くなった会社なんだよねリクルートの会社のビジネスコンテストからの新規事業育てていくっていう仕組みを真似していろんな大きい企業が自分の会社でビジネスコンテスト始めたりとかするみたいなぐらいリクルートって新規事業強い会社なんですよやばいですね全部名前聞いたことある名前聞いたことあるどころか使ったことあるっていう感じですよねっていうのをピックアップしてるんだけどね他にもいっぱいあるんだけど知らないやつとかも含めていやいや
-
十分しかもさスタディサプリじゃなくてホットペッパーとかリクナビとかもさエンジニアの立場になってね考えるとさすごいサービスだなって思うわけですよ本当に大量のデータを管理してなおかつ同時アクセスユーザーがめちゃめちゃいるしなのにサービスを落とさずにすぐ検索結果出すしあんだけ絞り込んでんのに持ってくるっていう結構な技術力があるわけですよ
-
なのでそんなITに強い会社がエンジニアにどういう教育をしてるんだっていうところを垣間見るっていうのが
-
点上げいや本当にリクルートの凄さが凄さが一瞬で伝わりましたそうすごいのここ人材派遣のイメージしかなかったねでしょ違うんですよ見方がもう一瞬で変わりましたそう新規事業といったらリクルートと言っても過言ではない僕も新規事業やってた時はかなりリクルートのビジネスの作り方をすごく参考にしましたそんぐらいめっちゃ有名な会社なんですよ実はなるほどで本編入っていくんですがはい
-
タイトルがねソフトウェアエンジニアとしての姿勢と心構えっていうタイトルですT和田さんがエンジニアはこうであれという話をしてるわけですよ聞き手よなこれは聞き手ちなみにT和田さんのTはテスト和田さんってことですか違います和田拓人さんのTですたぶんかかってるだけかもしれないかかってるかもしれないけどねTDDのTに
-
まあ多分違うはいじゃあ最初このスライド何が言われてるかっていうとプログラマーが知るべき97のことと達人プログラマーの2つの書籍が紹介されててでその中でもね共通して言われてるのは学び続ける姿勢が大事なんだとエンジニアはエンジニアは知識とか技術をどんどんインプットするのは大事なんだけどそれを学ぶのが大事なんじゃなくて技術の学び方を学ぶっていうのが大事だと
-
実際その達人プログラマーっていう本の中でもあなたの知識ポートフォリオに対して定期的な投資を行うことが大事ですと定期的に自分の知識に投資しましょうというぐらい非常に重要ですとエンジニアなんて新しい技術がどんどん出てくるのでそれをちゃんとどんだけキャッチアップできるかっていうところが重要になってくるとじゃあ学び方を学んでみましょう学ぶのってね
-
やりゃいいだけじゃないんですよ確かに要領みたいなそうそう法律よく学ぶってどういうことだと思いますかつまりもう少しレイヤーを下げるっていうのかなあーどうなんだ何が起きたら学んでるって言えるのなんか
-
これ逆かな自分が逆かもしれない成長することって言ったら逆ですよね成長はちょっと上だね確かに逆だわどういう仕組みで学んでるんだろうどういう仕組み分からないことを解決すること
-
そういうのであってます?ちょっと違うか?違うけど違うけど俺の問題の出し方も悪いまあなんか言いたかったことって学ぶことって要するに覚えることだなと思うんですよできなかったことができるようになるのは知らなかったことを覚えてるからできるようになるんですよなので覚えることをどんだけ効率よくできるかだと思うんですねなるほど確かに
-
記憶っていうのは実は3種類あるらしくてえっとお!わかる?長い間覚えるやつ長期記憶長期記憶で短いやつ短期記憶なんだあと1個あるんですよわかりません感覚記憶っていうのがあって感覚記憶は短期記憶より短いやつなんか感覚期間目とか耳とかで1秒ぐらい一瞬だけ覚えてる
-
パッパッパって何桁もすごい数字を一瞬で計算しちゃう子たちみたいなあの時に使うやつなんですか?あーどっちだったら短期記憶じゃねえさすがにそうなんですか?フラッシュアンザンは1秒ぐらい以上流れるからもっと直感的なやつがあるんだってへー短期記憶はさっき言った通り数十秒覚えてられるもの一般的には5から9個ぐらいってされてて一度に8個以上覚えるのは難しいよねってされてるらしいね
-
でまぁ長期記憶は長いやつはい長いやつはい でエンジニアにおける記憶ではご察しの通り長期記憶が大事ですとはいそりゃそうだよねそりゃそう作ったというか覚えたことを使うんだからねはい だから長期記憶も大事だしなんかそれを使えないといけないとそうですね長期記憶をじゃあ
-
使えるようにするにはどうしたらいいのか引き出しをうまく出す訓練が必要だって言われる覚えた後の話ってことですかもしくは長期記憶に定着させるのもそうだけどどういうことをやって覚えますか長期記憶僕は反復です非常にいい観点ですね
-
これ2つ和田さんが言っててそのうちの1つが反復はい何回も出し入れすることによって長期記憶として染み尽くしすぐ出せるようにするのが1つはいもう1つだねこっちがね最近大事だなって思う割とみんなやってる意識してるんじゃない?意識してる人は少ないと思うけど少ないっていうかそんな多くないかもしれない反復とでも分かると思うえーそう言われたら
-
わかりたいなわかってほしいなそう言われたらわかりたいな反復と覚える時ですよね長期記憶定着させるために反復しますもし意識してないのであればしてるかもしれないけどしてないならこれ絶対やったほうがいい関連付けするやつもありますね連想記憶って言うらしいんですけどこれが非常に重要ですこれらが非常に重要です長期記憶を作る上で
-
だからさっき言った繰り返し覚えるのもそうだし物事を覚えるときには見たやつと関連すでに知ってるやつと関連させて覚えるそうすると記憶がどんどん早く入ってくる
-
はいはい関連付け大事ですねしかもなんか面白いなと思ったのはこれはね脳内インデックスを作るってTワード探してたんだけどエンジニアやんと思ってこれは脳内インデックスを作るって言うらしいですなるほど確かにインデックスだからねやっぱDBもねインデックス作ると早くなるからそうですね検索早くなります一緒一緒でしたエンジニアだないいですね使ってきますじゃあ脳内インデックスを作る上で何をするといいと
-
具体的な行動をどうしたらいいかを紹介していました1つ目月に1冊のペースで本を読む読むと知識の幅が広がったりとかしていろいろ物事を覚える際の背景知識が入ったり関連付けられる似たジャンルを読んだら同じ情報が定期的に入ってくるしねこれは達人プログラマーだっけ
-
ソフトスキルズだっけどっちか忘れたけど解散あるあるですねどっちか忘れたけどそれにも言われてるんですよね達人プログラマーだったかな月一冊技術書か技術書を読みましょうじゅんぴょん最近どう全然できてないね恥ずかしいただ俺個人的に思うんですけど月一冊技術書読むって超ハードル高いんだよね資格の免許もしなきゃいけないかもしれないしあとそれこそ関連知識がないと読むスピード遅いしねこれどういう意味だって調べる時間も増えるから
-
だから最初はそうじゃないにしてもだから年間12冊技術書を読めるように成長していこうという目標が一個立つんだろうなって思う確かに割と終盤ですよねきっとそこらへん行くまでそうだね中級の壁なのか上級の壁なのかちなみに僕は9月今9月の中旬上旬ぐらいですけど今年は5冊なので2ヶ月1冊ペースですいやいや十分ですよいやまだまだですね
-
これはとにかく質の良い情報をインプットしようということを言っているんだと思います。2つ目、手を動かして学ぶ。これは意図としては2つあるみたいで、1つ目が物事を楽しくやれた方がいいじゃないですか。楽しくなるためには、
-
できるとできないことができるようになると好きになるし好きになるともっとやってさ新しいことができるようになってまた好きになってっていうサイクルが好循環があると思うんですけどでもそれってまず最初にやるっていうステップがあってからできる好きになるっていうループに入るのでやる手を動かすっていうところを外さずにやりましょうなるほどなんでやってないと思いますけど例えばJavaの本読んで満足するみたいな
-
動かしましょうやることでループに入れるんですね2つ目は社境をしてみよう移すこれは和田さんのツイートを引用してたんですけど面白くて社境の方法和田さん推奨の社境の方法社境なのでローカルでコマンドを作れる環境を用意して本をPCの横に立ててひたすらサンプルコードを移して実行して
-
で実行するたびにコミットしますはいGitのねはいでコミットログにページ番号を含めるとえー分からないことがあったらコミットログに含めるとかはいでえー章が終わるごとにプッシュしてバージョンタグを打っていくはいっていうやり方を推奨していて
-
コミットログにそういうメッセージを残すと当時俺はこういうことを思ったんだっていうのが後から見返せるなとかあとは分からないことを言葉にすることによって後ほど自分で調べるヒントになったりとかするんだろうなと思って確かに分からないことを調べる見返すタイミングがあんまりなさそうだなと思ったんですけど確かに分からないことが出てきた時に見返すっていうのはありそうですね気づきとかコメントとかも書けるかもしれないしね
-
正直俺社教で1回やったわ本当に数えることぐらいしかやったことないんだよ実は僕もないですよ半存形式のものを社教って言うんだったらやったことあるんですけど本の社教ないですねやっぱり重要というかあんまり言語系の本読んでないっていうのはあるかもしれないけどこれはちょっと俺ができてないからやりたいなと思ったわ言語勉強するときは多分やった方が早いと思うそれこそ
-
言語の文化とかそういうのを反映させたコードが本であったりドキュメントには書いてるだろうからね3つ目毎年少なくとも言語を一つ学習する出ましたこれも多分ひまじんじゃねえや達人プログラマーあぶねえ達人プログラマーあぶねえなあ二文字違いですもんね二文字違いこれ達人プログラマーで言われてるやつですねプログラミング言語は複数取得すべき具体的な理由は
-
書いてて、書いててというか、原さんが言ってたのはまずパラダイムが違う言語を選ぼうって話をしててパラダイムとはってなるじゃんパラダイムとはあの命令型とか宣言型とか関数型とかオブジェクト思考宣言型とか
-
そういう言語の書き方のルールというかその思考の種類思考の総称みたいな書き方記述方法の枠組みっていうのかなをパラダイムっていうだからC言語はがっつり関数型でJavaはオブジェクト思考宣言型でみたいな感じでパラダイムってあるんですけどパラダイムが違う言語を学びましょうってことを言っててなんでかっていうと
-
これを学ぶと同じアルゴリズムを実装するときでもいろいろなやり方があるなっていうのに気がつく視点が増えるそうそうそうそう視点が増えるとどういうやり方がいいだろうって思ったときの選択肢が増えるはいはいはい確かにだからプログラミング言語をパラダイムが違うのを複数学ぶことによってより良い行動が書けるようになるよねっていうことを言ってました
-
さすがですですよねさすがですなんですがもう一つその中で紹介したのがテクノロジーラダーっていうのを紹介してて俺初めて知ったんですけどテクノロジーのトレンドをまとめたサイトっていうのがありまして技術トレンドかな今最近流行りつつあるものとかを全部集めて
-
もうこれはプロジェクトに使ってもいいぐらい安定してるぞなんかこれまだちょっと進化途中だからなんかリスクあるかもしれないけどそのリスクが強度できるなら使った方がいいよとかこれはまだ出た初めだからあんま使わんほうがいいよみたいなのをトレンドまとめてくれたサイトがあるってですねめちゃいいですねいやそう俺初めて知ったんだけどね
-
テクノロジー開発書理論っていうまとめてるのとツール開発ツールソフトウェアでまとめてるのプラットフォームでまとめてるので言語フレームワークでまとめてるのがなんかあるらしいすごいなそうこれちょっと説明欄に載せておこうかなと思うんですけどこれだってみんな欲しかったやつですよねねまあみんな結構これちょっとサイト見たんですけどあのもう使われてるよねみたいなのあんま載ってなくて
-
割と本当に心身機営みたいなはいはいはいのは乗ってる感じなるほどでこのサイトでも多分なんだけど最終的にこれ安定したからいいよみたいなところに入っていくんだけど技術って入ったら卒業するシステムっぽいわなるほどいなくなっちゃうんですねちょっといてほしかったいなくなっちゃうから
-
本当になんか新しいとにかく新しいのなんだろうとかあとなんかどういう技術来てるんだろうみたいなのを見るときに参考になりそうだなテクノロジーラーダーっていうサイトでしたマジで直近のトレンドを知りたい本当になんか俺見たけどね知ってる単語スイフトしかなかったわあとJavaの16?なんだっけ17かなもう載ってた
-
へーと思ったので載せておきますシェアありがとうございます次身の回りをプログラミング対象にするどういうこと?変態的発想な気がしましたけどそんなことないですかこれはでも変態的な発想かもしれない大事なんですよ和田さんが挙げてたのはプログラマー向けの本の監修者がどうあるべきかっていう話をしててそれはプログラマーらしく怠惰傲慢短期であれと
-
プレーンテキストを好めとすべてをバージョン管理しろとすべてを自動化しろと変化を包容しろとこれは達人プログラマーでも言われてるんですけどプログラマーってそうであるべきだよねみたいなのが記述としてあってなのでこの人は本を監修をするときに原稿をGitでバージョン管理してるし原稿はマークダウンで書いてるしあと本の中で引用してくるやつあるやん
-
この本からいいよみたいなスクレーピングで取得してくるしへーみたいなことをねやってるんだってでもこれは達人プログラマーにも書いてあって極端だなって思うんだけどパワポは使うなとマークダウンでスライド作るツールあるんだからプレインテキストで作ってGitで管理しろとかとにかく何でもバージョン管理しろみたいな
-
バージョン管理できねえフォーマットはクソだみたいないいすねそこまで書いたらわかんないけどそんぐらいの意図を読み取ったわそうですよねちょっと領域を広げると例えば身の回りの和田さんは子育てや教育関係のLINEBOT作ったりとかアレクサBOT作ったりとか周りのものを便利にする仕組みっていうのかなそういうのもどんどんプログラミングで作っていっちゃおうぜ
-
プログラマーならみたいなかっこいいまあだからこのポッドキャストはまだねプログラマブルできてないねプログラマブルというかプログラマティックはいちょっと管理しないとなのかそうちょっと何を管理すればいいかわからんけどね本当にこの回の紹介文とかぐらいじゃないですかとりあえずまたなんか例えばこれからやるさ議事録とか原稿とかあとはまあそうだね
-
他もできるのかもしれないね最後ですね最後っていうのは具体的に学ぶって話をしてるんですけど最後アウトプットを行いましょうはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはいはい
-
あの順平君はもう分かってると思うんですけど分かってると思うんですけどインプットしてアウトプットするって大事じゃないですか大事です意外とアウトプットしない人多いかもしれないですけどアウトプットってめっちゃ大事じゃない大事ですねアウトプットするとさどんどんなんかインプット加速しないはいはい
-
それがすごく大事ですもうなんかアウトプットするとなんか例えば人に教えるのもさそれでなんかありがとうとかフィードバックくるやんはいおもろいやんはいテンション上がってもうちょっと学んじゃうじゃん学んじゃうんですなんかアウトプットしないとインプットできてないっていうイメージですよねそうかもうねアウトプットしないとインプットが完成しないんですよね出せないはいじゃんそれってはい
-
いや本当にそうもうアウトプット大全と言ってること一緒そんなのある?一緒そんなのある?カイチおすすめ書籍なんですけどアウトプット大全今度紹介してくださいアウトプットしましょうっていうのを書いててじゃあ具体的に何やるの?っていうところでブログを書くとか執筆をするまずは雑誌からコードを公開するとか講演するとか講演はハードル低いのだと社内勉強会社外ライトニングトーク
-
一番ハードル高いのが社外の講演そこまでいけないっていう奇跡的に全部やったことあるわ社外講演したことあるのもおもろいよな社外講演かあとは動画配信ツイッターやろうと思えばできますねそこらへん技術同人誌市場での出版って書いてたわ技術書店をあげて僕はここにアイテム一つ足したいのがポッドキャストね確かに
-
ソフトスキルズにはポッドキャスト入ってたじゅんぺいはここでちゃんとアウトプットできてると思うのでブログ書けるといいねブログね書こうぜ俺会社の人に宣言してきたわ改めてブログ書くってまだやってないけどという形で
-
大事なのはやっぱりアウトプットも大事アウトプットが一番大事なのかな実際に月一冊技術書頑張って読んでそれを実際に手を動かして学んでアウトプットをするっていうのがメインストリームかなと思うここのサイクルをちゃんと回していくと
-
学び続けるやり方というか学ぶ学び方を学べるうんうんうんうん合ってる?合ってると思います学ぶ学び方を学べますよはいことをお話しされてましたさあ時間的にどうしようかなっていう形なんですが切っても切らなくても大丈夫なようにお話しするねじゃあはいじゃあ続いて続きまして次学ぶっていう方法を学んだ学びましたあなたは学びましたはい次に大事になってくるのが
-
生涯現役エンジニアであり続ける
#077 トップ企業の新人研修から学ぶ「ソフトウェアエンジニアとしての姿勢と心構え」 ~前編~