関心の分離ってなんぞ?+📩
「この番組は駆け出しエンジニアの順平と先輩エンジニアの海一篠里が送る駆け出しエンジニアを中級エンジニアにキャリアアップさせるラジオですということで本日は僕がいつも大好きな話題のうちの一つなんですが保守性の高いコードを作るという文脈でですね関心の分離って結局なんなんという話を」
「させていただきますよく聞きますね関心の分離僕全然聞かないです普段の業務では出ないかもしれないけど本読んでると本かもしれないし本かマウント取りたい時とかに使うかもちなみに用法はどうやってレビューの時にね」
「こことここはなんか違う関心事になっちゃってるから分離した方がいいんじゃないってなるほど確かに綺麗な行動を書くっていう観点で言うと確かにすごい重要なことかなと思いますつまりどういうことですかって言っちゃいそうです僕はつまり関心事の分離ができてないってことですね」
「これがね分かるようになるんですねマウント取りまくってくるな今日はこれが分かるようになるというのを目標にちょっとお話しさせていただきます種本がですねちょっと前にも紹介しましたが継続的デリバリーのソフトウェア工学もっと早くもっといいソフトウェアを作るための秘訣っていう本から引用してこの本はですね継続的デリバリーって頭についてるんでCDの話かなって思いがちなんですがめっちゃ思ってた全く違います全く違うんだ全く違います全く嘘ってこと?」
「講義の継続的デリバリーではあるんですよどういう意味かというと素早く開発して素早くリリースし続けるための仕組み仕組みなんですけどCDってもっとデプロイパイプラインとかじゃないですかCDで思いつくのデプロイパイプラインはあくまでそういうソフトウェアじゃないですかそういうソフトウェアじゃなくて継続的にサービスを出し続けるための開発で必要なこと」
「今繋がったかもしれない何がですかサークルCIの本でどの本か忘れたんですけどそもそもCDが継続的デプロイなのか継続的デリバリーなのか似たような単語で違う意味が世の中にあるよみたいな混乱をきたしてるみたいな感じだったんだけどそれのそっちサイドかもしれないあーそういうことなるほど」
「繋がったわ今やっぱり系のやつ繋がってるこの人たちなんか繋がった気がするじゃあいわゆるCICDってデリバリーとデプロイで2つ言い方があるよねって言ってるけどその2つ言い方はあるし意味も違うんですねそうそうそうそうデリバリーはあくまでデプロイはあくまでデプロイのパイプラインのところだけを指しててデリバリーは開発からひっくるめてお客様に届ける価値を届ける」
「手法のなんか雰囲気のことを言うなるほどわかりやす確かもじゃあこの本で継続的デリバリーって言ってるってのはそういうことなんですねかもしれないあーなるほどっていうの中のすごいデリバリーがある中の関心の無理の話をしますいいですねはいいいですね急にその本興味湧いてきましためちゃくちゃ面白いですこの本ちなみに結構結構ベストチョイスですおーはいで」

「なんで関心の分離できるといい行動が書けるのっていうのはなんとなく感じてもらえたかなと思うんですけどじゃあいい行動を書くと何がいいんですかという話ではいむずいですねおいしいものはなんでおいしいんですかみたいなおいしいものはなんで満足するんですかみたいないい行動を書くとですねやっぱりあの」
「補修しやすいそうなんですけど補修しやすいし機能追加がしやすいですねなおかつもっと言うと分担した作業ができるようになるんですよちょっと関心の分離にどうしても絡まっちゃうんで説明むずいなと思ってたんですけどしっかりと関心の分離がされてるとえー」
「知ってるべき領域が減るのでなおかつ関係しなきゃいけない人が減るので分担して作業ができるんですね一方で関心の分離ができてないような」
「システムとかだと他のチームがここ作らないといけないからとかここのチームの仕様によってうちのコードめっちゃ変わるとかっていうのがものすごく発生してチーム同士の定例会週2回開かなきゃいけないそれで開発の時間が圧迫されるみたいなことになるんですよちゃんと関心の分離というか関心の分離もできててなおかつ素結合になっていると」
「もう定例なんてね月1ぐらいでいいしみたいなインターフェースの仕様は決まってるからこうなるようにうちはうちでやればいいよねっていうのがめちゃめちゃ並列で走れるようになるのですごい生産性が上がるんですねなるほどめっちゃでかいところで言うとバックエンドとフロントエンドでちゃんと分かれてるよねみたいなそうそうそうそうそうそうそう」
「でバックエンドの中でも分かれている方がね同じバックエンドを開発するでもそのバックエンドの中で何人も並行して開発できるようになりますからっていうのが理解できるようにというので今週関心の分離を学んでいきましょうはいじゃあまず関心の分離じゃあ関心と分離って何ですかって話からですね関心が一番むずい関心むずいですね」
「感じる心ですか?そっち?あの感じはね関わる心じゃん関わる心ですねすいません僕も肝心って今感心が思い浮かびました文字としてまずこの本書では何と言われているかというとですね感心の分離とはそれぞれ別々の感心小さな問題を持つように分離されたセクションからプログラムを組み立てるという設計原則と言われていますここ難しい難しいですねうん」
「難しいのでまあでもこれはね多分ね言語で言っても難しいんですよ関心って結局なんなんっていうねなのでコードで考えていきましょうあえてねじゃあまず一旦順便に考えてもらおうというところでECサイトでものをカゴに入れて買いますって購入確認」

「ページ行きますその時の合計金額とポイント付与を計算してそれを購入処理するコードがあるとしますコードを書く上で多分それっていろいろな作業があったので分割すると思うんですけどトップレベル一番上のレイヤーっていうんですかねどういうコードを書きますか一番上のレイヤー」
「伝わりますかね今の言い方で上っていうのは例えばで言うとプロセスオーダーみたいな関数ですねだからMVCで言うとコントローラーに当たる部分的な感じですかねそうですねコントローラーというかeコマースを司るクラスみたいなのがいてそこの購入処理っていう関数ですね多分コントローラーからそれが呼ばれるのかなインスタンス化されてその理由とかはい」
「コントロールから呼ばれた購入処理のところそうですオブジェクト思考で言うとが呼ばれた購入処理のところが今の処理をやっている今ははいそうですそれをコードに落とすとどうなりますかそれはどういうコードを書きますかリファクタリングっていうこと今じゅんぺいが素直に書こうと思ったら素直に書こうと思ったらとりあえず合計金額とかとポイント計算の話は多分別の関数として」
「分ける分けてあとは多分購入したもの商品たちを保存するやつもある実際購入ボタン押された時リクエストを送るやつもあるそれが大元の関数かそうですねデータベースに保存するまででいいですプロセスオーダーのコード何行くらいになりそうですかその関数は」
「ポイントとかお金商品保存するってなったらそれぞれ一つずつの関数で3つ呼ぶ産業と最後購入処理リクエスト送るやつリクエスト10行以内ですか膨らんだね急に」
「5行はでもそんぐらいでいいですねありがとうございますお払いをすると合計金額計算するやつポイント計算するやつデータベースに登録するやつとこれって今3行ぐらいで表してますけどこれは今関心の分離ができている状態なんですねもし関心の分離ができてないとどうなるかというとですねプロセスオーダーというコードの中にこの買ったやつを全部足し合わせますとまず」
「Aの金額Bの金額Cの金額っていうのを計算するのがそのままベターと書いてあってトータルみたいなのが出てポイントは商品金額の5%だからって言ってさっきの計算した合計金額×0.05みたいなやつもそのまま書いてあってで次データベースに登録しなきゃって言ってじゃあまずデータベースクライアント用意しなきゃって言ってデータベースクライアントクリエイトしてでそのままSQLの」
「レコードを登録するSQL文みたいなやつをそのまま文投げるみたいなものをするためにまずSQL文書いてとかそういうのはぐちゃーっと書いてるようなコードになるんですね一塊のそれは関心の分離ができてないコードになりますこういうこの2つ関心の分離ができてるコードとできてないコードからまず関心というものが何なのかをまず感じてみましょう」

「さっき言った通り最初の順番のコードは関心の分離ができている次言ったぐちゃぐちゃとしてるやつは関心の分離ができてない関心とは何かというとですねこの本の中ではまず関心になり得るものというか関心になり得るもの関心になり得るもの関心とはというところで結局その関心って固く言うとクラスや関数が持つ責務になると思うんですよ」
「責務って結局何なのかっていうのはちょっと説明するのが難しいんですけど何がやりたいかですよね結局そのクラスが関数がその何がやりたいかを一つにしましょうねっていうのが関心の分離今回その関心って何個もあったと思うんですけどちょっと喋ってるから分かりやすくなってしまってるんですが合計金額を出すポイントを計算するデータベースに突っ込むに分かれてると思うんですよはい」
「その中の細かいことはまた別であるじゃないですか具体的にどうやって合計金額を出すのかは今回のプロセスオーダーの責務じゃないなのでそれは外に追いやってるのが綺麗な関心の分離データベースの話も同じくその関心の中でも大きく2種類あるらしくて本質的な問題と副次的な問題」
「っていうのがあるらしくて本質的な問題はさっきで言うとビジネスロジックに近いところですね合計金額を出すとかあとはポイント付与をどう出すか一方で副次的なやつはデータベースにデータを突っ込むためのデータベースクライアントを用意したりとかなるほど別にデータベースじゃなくてもいいじゃんっていうことというよりはコンピューター処理をする上でどうしても発生してしまう複雑な何か」
「例えばなんかデータベースに変わるとんでもない新技術が発生したら変わるケースがあるけど購入金額とかポイントの部分はそういうものによって左右されないよねみたいなあーそれで言うと関心のぶりの仕方としてその考え方はめちゃくちゃ重要でそれはそれで大事なんですけどどちらものりさんが言ってるのは副次的な問題になりますねうん」
「なのでさっき言った合計金額とかポイントはあんまりデータベースのロジックとは関わらないんですけど本質的な問題をどうにか処理するところにさっき言ったようなデータを用意するために何かしなきゃいけないみたいなのを持ち込むべきじゃないんですよ例えば」
「画像処理AIの画像処理AWSのストレージから画像を取ってきてその画像を分析しますってなった時に画像を分析する処理にS3から画像を持ってくる処理入れちゃダメなんですよなぜならS3から画像を取ってくるためにS3のクライアントを用意してなおかつその認証情報とかを入れて」
「でS3から撮ってきてで画像をバイナリに変換してみたいなそういうのは副次的なものだから」

「本質的な分析に入れちゃいけないうんみたいに分けるべきだという風にこの継続的デリバリーの本では言ってますとあくまで画像に関することをやりたいのであってどこに保存されてるか気にしたくないそうですねはいそれによってね将来ねGoogleドライブに移しますってなった時に計算ロジックいじんなくてよくなるんですね結果として結局その保守しやすいコードって変えやすい置き換えやすくするためにはどうするかっていう話ですからうん」
「関心が僕むずいなと思うんですよねめっちゃこれってめっちゃ主観だなと思ってて例えばさっきだったら金額を計算してポイントを計算して購入だから永続化する処理をするこの3つがあったじゃないですかただ」
「その金額とポイントってユーザーに関する数字だなっていう抽象化をしてしまうとそこでまとまっちゃう可能性あるじゃないですかそこの差事加減を見つけるのがすごい難しかったなっていう記憶があるんですよねわかる今回で言うとやっぱりその関心は一つであるべきだよねっていうモットーのもと合計金額ポイントで分けましょうねって話なんでしょうね」
「難しいんですけどねその関心の区分っていうのが結構個人の個人ですね感覚になっちゃうというかで一個思ったのはこれを別々で使うケースがあるんじゃないかっていうのを考えるのはめっちゃいいなと思ったんですよねあーなるほど例えば合計金額の計算って別に購入するとき以外も使い得るというかうん」
「それは何ですかねカゴとかってことその発想で僕はポイントと合計金額分けました素晴らしい例えば領収書発行する時とかも合計金額はいるけどポイントいらないよねっていう意味で分かれる可能性があるというかっていうのを考えるのが一個ありなのかなって思いましたね以上ありがとうございます結構勘どころみたいになってますよね職人技というか」
「これがいわゆるなんかよく言う美しいか美しくないかみたいなところになってくると思うんですけどなんかめっちゃ昔のことを思い出しながら喋るんですけどさっき言ってた例えばS3から撮ってきて画像処理したいっていうのはS3は副次的なものじゃないですかでも当時駆け出してた頃を思い出すといやちょっとどれが副次的なのかわからんなってなってたような気がするうんうんうんうん」
「それはあるかもそういう意味だと何なんでしょうねガイブライルブラリかっていうのが関係なんですかねどうなんだろうなでもだいたいそうじゃないですかなんとなく今喋りながらですけど多分自分たちが作ってるやつかそれ以外かで分けるべきぽいくないですか確かにでものりさんが言ってるのは分かるし僕も最初そう思ってたその勘どころの見つけ方がね」
「なかなか難しいですよね多分それは言われ続けてなんやねんって思って悩み続けてだんだん言われなくなってこういうことだったのかもしれないってなるんですよね多分そうなるか実体験的にある?じゅんぺんなんかそういうの今カイチさんが言ってた試しすりから持ってきて解析して保存するみたいな流れの説明ができるってことは段階に分けてこういう処理やってこういう処理やってこういう処理やるっていう風に言えるっていうのは」

「なんかその関心の勘どころが分かってるなと思ってそこが当時確かに言えなかったなって思います例えば持ってきてを一つのこととして多分捉えられてない確かに解析する画像を解析するってなっちゃうよね確かにしかもどうせどっかから取ってこなきゃいけないしって思っちゃってたかもしれないその画像をの日本語にその画像を取ってくるとこ入ってますよね多分入ってます入ってますはい」
「そういう感覚でした当時は分かる分かるそこでもどうなんで変わったかって言ったらなんかもう行動を書いてって変わったのかな経験そういう段階があるんだっていうのを知ったことだったかなという気がしますうわーこれ言語化したらでも強そうだぞそうですねでも差し替え可能かどうかっていうのを知ってるのはありなのかもしれないななんか」
「データベースのところとか僕めっちゃ区分け分かんなかったんですよその理由ってアプリケーションで絶対RDB使うもんだっていう仮定概念があったんでセットみたいなね当たり前にあるもんで一部だと思ってたんだけどよくよく考えたら別にそれRDBじゃなくてもいいし何ならファイルでも実際動くには動くものを作れるじゃないですかそうですね」
「っていう差し替えの部分っていうのは確実に分けることが多いなっていうのは思ったないいかもそれ確かに確かに結局この本だったか忘れちゃったんですけどフレームワークも差し替えれるべきだよねっていう話をしてる本何でしたっけクリーンアーキテクチャークリーンアーキテクチャーかクリーンアーキテクチャーだフレームワーク依存のコードは分離させましょうねみたいなことは結局言ってた気がするんで」
「のりさんの言う交換可能かどうかっていう勘どころが結構全てな気がしますねでもそれ以外もあると思うさっきの値段とポイントを分けるのは別に差し替え可能かどうかはまた別の観点だと思うんでまあそうだねあと口頭で説明するときにとがつかないとかなるほどなりないとなりなりのとがつかないはいはいはい」
「で一個のことやってるかが分かるみたいな結局言葉にするのが全てなのかもしれないですね言葉にするのとあと差し替え可能かか他にもいろんな観点はありそうですけどその辺はよく考えるかもなありがとうございます考えるとか観点だから関心って言われてるんでしょうね本当に物を考える今多分このプロセスオーダーを作るときに」
「今プロセスオーダーという関数しか見ないじゃないですかプログラマーってその時に頭のメモリの上に完全に乗った状態で仕事ができるかっていうところも感どころなのかもしれないですね関心の分離ができているかっていう意味でパッと見理解できるからねパッと見理解できる量じゃないと分離できてないと思った方がいいみたいな確かにそれはあるかも最近僕レビューする時にパッと見よく分からなかったらとにかくコメント書くようにしますねレビューコメントではいはいはい」
「さすがにパッと見よくわかんないって書いてるわけじゃないですよねさすがに違うなんでわかんないのかまでちゃんと分解して書くよ大事めっちゃいいですねそういうところから関心ってなんなのみたいなところを感じてもらえればなと思ったんでディスカッションいただきありがとうございました簡単な分離の方ですね」

「分離の方が簡単でですねこれは分離って具体的に何やるのっていうと他の関数とかクラスとかクラスは違うか他の関数やクラスに追い出すことだと思うんですねなのでさっき順平の言ってくれた合計金額出してとかっていう流度だと合計金額を出す具体的なアルゴリズムを他の関数に出してるわけなんですよそれによってプロセスオーダーという関数からは」
「見えなくなってるそれで分離ができてるあとCで言うとさっきのデータベースに登録するっていう処理実はクラスを分けることが一般的だと思うんですよオーダーを司るクラスみたいなのがいてそいつはデータベースについては何も知らなくてデータベースクラスをさっきの」
「プロセスオーダーの引数に渡すのかもしくはコンストラクターに渡すのかどっちかの方法で別のインスタンスをポーンって突っ込んでデータベースの処理をすることで」
「データベースに関する関心を分離できているクラスを分けられているからみたいな形で分離することが多いかなと思いますここまで言うとなんとなく分離ってこういうことだなということは分かると思うんですけどこの本を読んでいて僕がちょっと面白いなと思ったところもちょっと紹介することで分離に対する回想度もちょっと上げればなと思います面白いなと思ったところがですね」
「関心の分離がされているが密結合であるというものが世の中にあるという話です矛盾してないんですねそれって思うよねただよくあるんですね例えばですけどさっきちょっとお話に出ましたが片方がデータの概念を変えたらサービスが動かなくなるみたいな状態これって関心の分離ができているけど密結合なんですよ確かになので何でしょうね」
「別に結合度は関係ないってことなんですね関心の分離に対してはとにかく見えなくなってれば関心が分離できているなので結合と関心の分離ってのはあんまり関係なくて分離してるけどミス結合分離してるけどミス結合ですねなのであくまで行動とかのベースで分離しているっていうのをまず考える行動だけじゃなくて何でしょう」
「違うシステム同士例えばWebAPIで連携するとかだったとしても関心の分離というのを意識すると並行して開発しやすくなるので非常に生産性にかかってくるところなので関心の分離を意識していきましょうというところが」
「今日ちょっとやりたかったお話の部分です関心って結局なんなんっていうところちょっとでも解像度上がればいいなと思いますこれちなみにさアプリケーションだけじゃなくて全てのレイヤーで行われてますよねそうですねまさしくまさしく僕らウェブアプリケーション作ってるときって別に物理層のことを気にしないというかわざわざその信号がどんなバイナリに変換されてどういうなんか」

「光ファイバーの通り方するかなんて考えないじゃないですかそれって要は関心分離しているからですよね物理像の方でって思いましたねこの本読んでて一個明日から使えるところを思い出してちょっと話しておくんですけどそんなの常識だよって言われちゃうかもしれないですがデータベース使う時とかってデータベースクライアントを作るじゃないですかそれってデータベースに依存するクライアントを作るじゃないですかクライアントイコール何らかのライブラリーだとか」
「クリエイトみたいなそういうコードを書くときって割とそのコードを抽象化しないがちだと思うんですよ例えばさっきのデータベースの話してめちゃくちゃ戻っちゃうんですけど画像を解析するって考えたときに画像を取ってくるって言ったじゃないですか画像を取ってくるっていうところ例えばじゃあgetイメージメソッドダウンロードでしょダウンロードイメージメソッド」
「があるとしてダウンロードイメージメソッドの中でS3クライアント作っちゃダメなんですよダウンロードイメージメソッドの中では多分クライアントは作るのかなクライアントを作ってクライアントがダウンロードして画像を返すみたいなメソッドになると思うんですけどクライアントはちゃんと抽象化して抽象化した先でS3のクライアントを作るっていう風にしないと」
「後で変えようと思った時に何でしょうね書き換える範囲が広くなっちゃうというかもしそのS3クライアントを作るというところさえ追い出しておけば後でGoogleのドライブのクライアントにする場合にただメソッド丸っとガッと変えればいいだけなんでテストもしやすいですしあとMockも作りやすいですねっていうような形で僕結構その何でしょうクライアントを作るのはあんまり抽象化してこなかったんですけどしっかりとその」
「外部ライブラリを使うときはその外部ライブラリを呼び出すためだけのメソッドをちょっと抽象化してコードを書くようにするとよりきれいにコードが書けるんじゃないかなと思います一般的なプロダクションで使われているコードだとインターフェースで分離しているような気がするインターフェース作ってどのクライアントでもいけるようにして」
「実装部分は別で作ってどのインスタンスをインスタンス化するかは大体今だとフレームワークでDIの仕組みが入ってると思うんでパターンによって切り替えるみたいなのを裏でやってそうインターフェースって言うとインターフェースと」
「その下にいるAWSクライアントを受け止めるためのクラスみたいなのがいるみたいなイメージですかそうそうそう要はそれって関心ごとを中小化した部分と具象化した部分で分離しているというかそうですねその辺をねマジで怠ってきてたんで僕はちゃんとしなきゃなと思いましたちなみに関心ごとの分離だとさもう一個覚えておいた方がいい言葉があるかなと思うんですけど異常」
「異常異人情異人情の異に譲る浄土の浄ですね浄土の浄で大体この何でしょう関心事分離させて違うクラスに役割を持たせて持たせることを異常とかって言ったりするなと思っててオブジェクト思考の小難しい本を読んだ時にしょっちゅう出てくる単語なので一応意味は知っておいた方が後ほど本読む時にお得かなって思いました確かに」

「僕最初異常っていう言葉がなんかしっくりこなさすぎてというかいやしっくりはくるんですけど意味が分かんなすぎてむずくてでも意外と教えるとシンプルではあるので渡してるだけ譲ってる要は役割をあっちに任せちゃうみたいなことだよねなので異常を覚えておくと」
「ちょっとオブジェクト思考系の本が読みやすくなると思いました役割を任せるっていう風に読み換えればいいですね読みやすそういう設計本って空中戦ばっかしてますよねなんか想像させながら説明してくるんで僕らのエピソードもそうなっちゃってると思うんですけどその受け取り手が脳内でどんだけ綺麗に想像できるかに依存してますよねなんかめちゃくちゃだから想像できるようにならないと読めないんですよねなんかね」
「なのでちょっとインプット我々のポッドキャスト聞いて増やしていただいて読めるようになってもらえればなと思いますじゃあお便りいきますねラジオネームシュラニーからのお便りですまず感想から楽しく愛聴させていただいてます3人の中でも価値観や資座の違いがあって自分に投影して考えたりもしていますと言いつつ通勤時間や夜ゴロゴロしながら超ゆるく楽しんでいるのでこれからも活動頑張ってください」
「ぜひ話してほしいこと取り上げてみてくれると嬉しいですということで取り上げますじゃあありがとうございます3ついただいてるんですがあえて1つにします採用における人材贈呈期パッコペルソナと実情乖離が出る理由についてというテレビタックルみたいなビートたけしですか」
「たぶんペインが大きめの課題ですよこれも要するにあれですよね企業側がこういう人欲しいよって大ピラにバーンって出してるんですよね出してない?そういうことじゃない?大体でもそうじゃないですか出してて応募してきて僕はそりゃあハマってますって入ってきたら全然違うやんけっていうそれもありますし採用の時ではこういうやつっぽそうだったのに入ってきたらちょっと違くねみたいな猫かぶる補正とかね」
「ありますよどうなんでしょうね理由についてか僕これどっちかっていうと受ける側の問題だと思うんですようん採用を試験だと思ってる人が多いんじゃないかなと思っててそうじゃなくてマッチングアプリだよっていうマッチングアプリかだから僕の中で僕採用受けるときに」
「あんまり猫被らないようにするというか嘘ついてというか背伸びして入っちゃったら後で苦しいからもう素体でいこうみたいなそうめんの状態でいこうみたいなそうめん素体なんですね素ですからねそうめんの状態でいって」
「それで受け入れてくれるところがいいだろうっていう発想で受けるんですけどそういう発想じゃない気がする世の中的に見るとよく見せようとしますよね俺は冷やし中華だぜみたいなそうめんなのにってことですよねわかりますわかんなかった今ありがとう」

「分かるな僕はなんかSESで面接のタイミングみたいなのあって採用されるみたいな感じですけどそういう時はちょっと転職活動とかとはまた違ってやっぱちょっとよく見せてなんとか入りたいみたいのはやっぱあるますけどそれもあんまり良くないのかもですけど特に転職活動とかなんかその会社に行くかどうかってなった時には」
「猫をかぶらずにこういう人ですっていう風に面接受けてダメだったら普通に俺と相手の会社はなんか合わないんだなっていう気持ちでやってほしいですよねみんな学校教育で合格か不合格がくっきり出すぎるテストを受けすぎているうん」
「その延長線上で採用試験を試験って言っちゃってるもんね言ってないですけどね誰も誰も言ってなかったですけどねもっと言うとあれなんじゃないですか日本の雇用スタイルなんじゃないですか人材流動が少ないんで一世一代の」
「入社じゃないですか多分最近はちょっと変わってきてる感じが露骨だけどとはいえ当時なんかこんなに中途採用違うな9月から採用みたいなのって結構なくなかったですか前はそう」
「そんなことないですか9月から採用ってなんですか中途ってことまあそうですね普通は多分4月1日から入るのが割と普通だったみたいなのが結構最近まであったんじゃないかなと思っててそうなのいやそんなことないんじゃないそれは初めて聞いた中途は多分いつでも入ると思うよそうなんだまあ僕のここ7年8年ぐらいの話ですけどね僕も同じぐらいですけど中途はそんなもんだと思うよじゃあそうだ」
「俺より先輩2人が言ってるからじゃあそうだそう思うそう思う公務員とか知らん先生とか学校の先生は特にそうだろうね4月1日だろうね確かに楽器の変わり目とか以外で今日から担任になりましたとか見たことない聞いたことない緊急ですよね確かにそれ以外ないんじゃないあんまり普通の会社はそんなことないですね理由はだからその」
「受かりたいっていうとこなんでしょうね見破れるといいですけど無理ですねそうなんですね使用期間でライトにクビにできるといいんじゃない言うたらあれ使用期間って3ヶ月くらいいやーなんか結構ライトじゃないんじゃないですかなんか炎上しそうだもんななかなかリスク聞いたことなくないですかあんまり俺は一人だけ知ってますけど一人しか知らないですもんそうなんだはい」
「一人いるんですねいるんだねいるいる今その人は刑務所で元気?捕まってない捕まってない順当にクビになってるやつ確かそうなんだエンジニアじゃないですちなみにエンジニアじゃないですいやーそうなんですねクビんできたらお互い様だと思うんですけどね嫌える方は嫌かもしれないですけど将来的に見たら絶対プラスだと思うんですけどね合わないって思われたとかレベルが足りてない職歴どうなるんでしょうねそれまあ」

「正直に言わなきゃいいだけなんですけどでも確かにもし仮にその文化になったとしたら最初は気にされそう気にするよこいつギャップあったんだってなるわまあそうですよねアメリカとかだとさ別にレイオフになる理由は優秀じゃなかったから優秀じゃなかったからじゃないケースとかも結構あるイメージあるけどねどっちもあるっぽいですね単純になんていうんですか」
「技術力が足りないからこの人はいいやっていうのももちろんあるっぽいんですけど」
「会社都合でって言い方が結構あるっぽくて会社として今例えばエンジニアを雇ってアプリとかを作っていくフェーズではないから単純に今はエンジニアはいらなくなっちゃったっていうので切るみたいなレイオフするみたいなのは結構あるみたいですね会社都合その場合だと別に個人関係ないかってなるけど履歴書だけ見た時に紙通らなくなんねっていうのがあるよねそういう人がめちゃくちゃいっぱいいたらいいんでしょうね確かにね」
「全員そうみたいなね使用期間で一回切られてはいるみたいなそんな世の中でもなんかしんどそうですね確かにトルガーはいいですけどねファーストペンギンが地獄を見ますね確かにでも一人いますからね一人しかいないわけじゃない一人しかいないわけじゃないっていう感じですかねだから今この世の中に対してはできることはマジで」
「選挙が見極めるしかないですもんねだってね絶対ね追い込んでね面接で追い込んでマジでカジュアル面談やって飲み行こうよぐらいにならないとむずいですよねそれ逆にむずいけどねそんなたくさんだって面談してるだろうから毎回毎回飲みに行ってたらね大酒飲みじゃないとカジュアル面談して大酒飲みする仕事になっちゃいますねやばいね」
「なんて泥臭い触手だなかなか難しいですよねうん千球眼そうだよなもしくは千球眼なんですけど結局うん」
「何かに没頭してる人は絶対にいいみたいななんかそういうのもあるじゃないですか例えばよく聞く体育会系の人取るみたいなねそういうのしかないんでしょうね多分ねあんま良くないですけど良くないというか良くないかは分かんないけどこれなんか人材像定義っていうのはやっぱり技術力面とあとソフトソフトというか人間性面なんですか」
「人間性は本当に大酒飲みになるしかないのと技術面で言えばコーディング試験なんですかでもあれも結構決まりきった方というかアルゴリズムのテストとかも多かったりして見抜くの難かったりするんですかねコーディング試験で言ったらコーディングは分かるじゃない多分人物像が見えないあとなんだろう」

「今欲しい人材のコーディング試験をちゃんと作るのは難しそうだねただ少なくともコーディングできるなら大丈夫だろうっていう安心の仕方はあるかもコーディング試験はお金も時間もかかりますからねサクッと普通の面接ってわかんないですけど終わります終わった後15分くらいで話しますOK良さそうだねみたいなので通ると思ってるんですけど僕は実際知りませんよ実際知らないですけどコーディング試験は真面目に見なきゃいけないんでめちゃくちゃ稼働取られるです」
「確かにそれ多分超大変だと思いますなんかコーディング試験を受け負ってる会社みたいなのありますよねあると思いますあると思いますそういうフィルターを通すしかないですよねと思っちゃいましたね丸付けはでもあれじゃない多分会社のエンジニアじゃないとダメだと思う丸付けというか評価か問題作ってくれるとかあるかもしれないですけどね技術面は確かにコーディング試験でだいぶ潰せると思いますただコストとか時間かかるよって話ですよねそうそうそう」
「だから本当に最終面接でこいつ本当に大丈夫そうかぐらいの人数だったらよかったりするのかな人数?稼働がかかるのが問題だと思ってて一時面接からコーディング試験するとめちゃくちゃ人増えちゃうので大変ですけどエンジニア職種で割と最後まで行ってコーディング試験受かった後最終面接かっこ儀式みたいな状態だったらいいのかもしれないですねそこで飲み行きましょうそこまで来た人たちと飲み行く」
「飲みに行った時に嫌って言う人いるかもしれないじゃん飲み会はちょっとみたいなわかんないでもそんなやつ切るっていうスタンスならまあそれでいいかもしれない酒は飲めることみたいなねまあでもそれはそれで間違っちゃいないよねそういう風土であれば会社の風土もね大事ですねはい」
「っていうふわっとした話になっちゃいましたが多分同じことをどうせシュラニーさんも思ってますしどうせって思ってそう思ってるんでしょうからね難しいですね我々として言えるのはもし転職活動する際には本当に結婚相手見つけるぐらいの気持ちで素直に行きましょう居心地いいとこ探すためにこっちの方が絶対に」
「っていうのを発信し続けていきましょうそうですねそれによって応募者の質が変わり会社がハッピーになり日本の経済が上を向くとすごい大義ですね日本の経済も上向くしそういう人材が増えて日本が世界を引っ張っていくようになると確かに日本人ってみんな上向いてるよなみたいな」
「そういうとこ作っていきましょうひまじんプログラマーのおかげだなってそうだお便りありがとうございましたありがとうございますではハッシュタグひまじんプログラマーでSNSネックスフィードバック募集してますので関心の分離してる事例あとは今の関心ツイートお願いいたします今の関心いいですねハッシュタグ今の関心で今の関心なんだろうな何ですか関心」
「最近ね発光ですねなんかちょっと前もありましたけど定期的に行きますね光る方ですねパンとか光る方じゃなかったそっちなんだ体光るかなって発光商品の一撃目で光る方もどんどん顔テカリ始めてるんですけど最初にパン出すのはマニアックだねそうなんですかどう思う」

「確かにマニアックからパン屋さんマニアックじゃない主点がパン屋さんですね完成物見た時発酵食品に見えないもん納豆とかねヨーグルトとかまあまあ純平パン屋さんですかね膨らんでる瞬間見ないとそんな感じじゃないからな作ったことないですよあいにく僕ピザ屋さんだったんで家庭見てるのか発酵とかやってたんですけどねはい」
「あとはポッドキャストの説明欄からGoogleフォームでお便り質問要望お待ちしていますお気軽にお願いいたしますパンの作り方とかでもねいらんなクロワッサン作ってみたいどうぞ大変そう」
「難しいらしいですよねすぐコーケルとかやりそう僕パン屋さんでクロワッサン買いますね好きなんでわかるうまいな各種ポッドキャストプラットフォームのフォロー高評価お待ちしてますのでクロワッサン好きな人高評価お願いしますあと太陽の手を持ってる人も高評価お願いします懐かしい懐かしいではすいませんちょっと」
「いろいろ関心がそれてしまいましたが本当だな分離しまくってまとまらなくなった関心の分離したらいいなと思って最後散らしてました散らしたなではまた次回バイバイバイバイひまじんプログラマーではあなたのフィードバックを募集していますちょっとやりとりしたい人はメール気軽に送りたい人はGoogleフォームツイートをお願いします詳細は説明欄を見てくださいポッドキャストのフォローコメント評価してくれるとバカ騒ぎしますそれではまた次回」