$30 off During Our Annual Pro Sale. View Details »

私のキャリアの旅路: 技術をきっかけに変化を楽しむ

私のキャリアの旅路: 技術をきっかけに変化を楽しむ

かとじゅん
PRO

July 22, 2023
Tweet

More Decks by かとじゅん

Other Decks in Programming

Transcript

  1. 私のキャリアの旅路:
    技術をきっかけに変化を楽しむ
    HACK.BAR & Forkwell
    言語カクテルとエンジニアの人生に触れる夜〜キャリアLT〜
    かとじゅん(@j5ik2o)
    ©2023 Junichi Kato, Chatwork Inc
    1 / 12

    View Slide

  2. 自己紹介
    Chatwork テックリード。ウェブ業界に転身後、ScalaやDDDを採用
    した開発に従事。現在は次期アーキテクチャの設計に携わる
    執筆
    WEB+DB PRESS Vol.126 - 21周年記念エッセイ 今も読み続ける1
    冊の本
    レビュー
    エリックエヴァンスのドメイン駆動設計
    Akka実践バイブル
    ドメイン駆動設計入門
    良いコード/悪いコードで学ぶ設計入門
    WEB+DB PRESS Vol.132 - 特集1 オブジェクト指向神話からの脱

    趣味はRust。最近CQRS/Event Sourcingの実装を作りました twitter: j5ik2o
    github: j5ik2o
    ©2023 Junichi Kato, Chatwork Inc 2 / 12

    View Slide

  3. タイトル回収
    キャリアは旅の如く、その本質は目的地に到着する
    ことだけではなく、その旅路そのものに醍醐味があ
    ります。目的地を目指す道のりでは、新たな出会い
    があり、見たことのない風景に出会い、未知の食べ
    物を味わうなど、旅路は絶えず新しい体験を与えて
    くれます。
    同様に、キャリアもまた、最終的な目標に辿り着く
    ためだけの旅ではないのです。キャリアの中で得ら
    れる学びや経験、出会いといった多くの価値が存在
    します。目的と手段の二項対立から逃れて、キャリ
    アの旅そのものを楽しむことが私たちの成長にとっ
    て大切なのです。
    前半は、僕のこれまでのキャリアを、後半では僕の
    キャリアで大事な考え方を紹介させていただき、ひ
    とつの事例として参考にしていただければ幸いで
    す。
    ©2023 Junichi Kato, Chatwork Inc 3 / 12

    View Slide

  4. 駆け出し編
    1982年、(趣味)東芝 PASOPIA(8bit)でゲームとBASIC
    1989年、(趣味)NEC PC-88VA(16bit)でゲームとパソコン通信とN88-BASIC
    1990年、東芝入社。蛍光灯工場の技術部門(製造技術/品質管理)
    1992年、(趣味)東芝ダイナブック(32bit)を買う。アセンブリとC言語
    ポインタは難しいが、理解する前に使えるようになった
    業務でもツールを開発していた。これもしかして仕事になるのでは??
    1995年、Visual C++ 挫折。その後、Visual Basic, Delphi
    Cの延長戦でいけると思ったが、C++が全然理解できなかった
    (趣味)Delphi(Object Pascal)は素晴らしかった。自作VCLが雑誌掲載
    1998年、東芝を辞めてSIerの世界に…
    安泰な大手を辞めて大丈夫??と散々慰留された
    今振り返っても正解だったと思う
    趣味のプログラミングが仕事になる思ってなかったが、仕事にしてみようと思った時期
    ©2023 Junichi Kato, Chatwork Inc 4 / 12

    View Slide

  5. 下積み編
    1998年、Windows NTで分散システムを開発するプロジェクトに参画。
    Visual C++ で本格的にオブジェクト指向を学び実践できるようになる。RPC
    やスレッド周りのクラスライブラリの設計・実装を担当
    2000年、開発会社を設立。PHP4とPostgreSQLを使ったダイエット支援系ウ
    ェブサービスの設計から開発までを担当
    2002年、SONYでPS2のSDK開発。C言語でオブジェクト指向開発
    2003年、渋谷のネットベンチャーに転職。R&Dのマネージャを担当。NATト
    ラバーサル系スタックを開発しSaaS化
    2004年、Java, C#, C++, PHPなど様々な案件を自社で受注
    2007年、Seasar2 のOSSプロジェクトに参画(S2Chronos, S2Buriなど)
    2008年、不動産系ベンダに転職し、Seasar2を使ったパッケージ開発
    初期はがむしゃらにやってた。とにかく経験を増やすことを重視。Java/Seasar2
    をやりはじめてから設計に気を配るようになった
    ©2023 Junichi Kato, Chatwork Inc 5 / 12

    View Slide

  6. オブジェクト指向と設計編
    2009年、ScalaとDDDを知る。Java,DDDを採用した大規模なアジャイルプロ
    ジェクトにアドバイザーとして参画
    2010年、日経ソフトウエア特集記事執筆
    同年、Evans本和訳のレビューに参画
    2011年、WEB+DB PRESSのJavaの連載を担当
    同年、日経ソフトウエアにてScala入門記事を執筆。
    同年、著者のEvans氏から直接講義を受ける。集約のレクチャーがとても参考
    になった
    Javaの開発が楽しかったので、ウェブアプリケーション開発がメインになった。
    ブログもそれなりに書いてた。技術評論社の編集さんの目に止まり、連載を担当
    することに
    オブジェクト指向設計を起点に、設計を議論することが多くなった。そして DDD
    とScalaに出会い、新しい設計パラダイムを知る。10年先通用する知識だと実感
    ©2023 Junichi Kato, Chatwork Inc 6 / 12

    View Slide

  7. 関数型とアクターモデル編
    2011年、ドワンゴにて、Scala,Play2,DDDを採用したAPIサーバ開発プロジェ
    クトなどを立ち上げ
    2013年、グリーにて、メッセンジャーの開発プロジェクトを立ち上げ。
    Scala/Finagle
    2014年、現職チャットワークに転職
    2016年、メッセージングシステムをScala/Akka/Kafka/HBaseを採用した
    CQRS/Event Soucingシステムに移行
    2017年、OAuth2サーバをScalaでフルスクラッチ開発
    メッセージング以外の機能についても、Akka(アクターモデル)を本格的採用し
    マイクロサービス化を進めている。
    Scalaの強力な関数型の機能を使い、分散システムの開発がメインになった。なか
    でも並行性や耐障害性に優れたAkkaをフルに活用する機会が増えた。現在開発中
    のシステムはCQRS/Event Sourcingを採用。
    ※実は業務以外ではScalaはほぼ書いておらず、今はRustに時間を割いている
    ©2023 Junichi Kato, Chatwork Inc 7 / 12

    View Slide

  8. キャリアにおける僕の大事な考え方
    注意) これは個人の考え方であって、みなさんに強要するものではありません
    エンジニアとして学び、実践につなげるというのは誰もやること。それだけではなく、自分のキャリアの旅路
    そのものを楽しむことが大切 だと思っています。そのためには、以下の 3つの考え方 が重要だと思っていま
    す。
    人生の目的は後から作るものだし、変わってもいい
    「今に集中すること」の大切さを知る
    過度な自己注目を避けよう
    ©2023 Junichi Kato, Chatwork Inc

    View Slide

  9. 人生の目的は後から作るものだし、変わってもいい
    実存は本質に先立つ
    例えば、はさみは、目的(本質)が先で、存在が後
    一方で、人間は、存在(実存)が先で、目的(本質)が後
    人間の目的は先にあるのではなく、後から作るものです
    生きてること自体が目的でもいい。無目的でさえも目的で
    はないと否定できない。人間は「自由の刑に処されてい
    る」。行動のすべてが自己責任になるが可能性も無限大!
    「こうしないといけない」があるとしたら、あなたがそう決
    めているだけです。絶対的な目的があるとしたら自由のない
    物的な人生ではないか
    人生の転機に人生の目的を変えても問題はない。人間なのだ
    から(もちろん、サンクコストの罠やリスク回避性の問題はあ
    るが…)
    『哲学用語図鑑』より
    ©2023 Junichi Kato, Chatwork Inc 9 / 12

    View Slide

  10. 「今に集中すること」の大切さを知る
    「ハングリーであれ。愚か者であれ」 ジョブズ氏スピーチ全訳 - 日本経済新聞
    将来をあらかじめ見据えて、点と点をつなぎあわせることなどできません。できるのは、後からつなぎ合わせることだけです。だか
    ら、我々はいまやっていることがいずれ人生のどこかでつながって実を結ぶだろうと信じるしかない。
    ジョブズは大学に入学しましたが、半年で中退。親に金銭的な負担を強いながら、興味がない必修科目の授業
    に価値を見出せなくなったためです。しかし、大学を辞めたものの、その後も興味のある授業だけを取るもぐ
    りの学生になりました。
    ジョブズが魅了された授業の1つが、伝統的で芸術的な「カリグラフィー」でした。そして10年後、最初の
    Macを設計する際に、それがアイデアとしてよみがえったそうです
    ところが10年後、最初のマッキントッシュを設計していたとき、カリグラフの知識が急によみがえってきたのです。そして、その知識
    をすべて、マックに注ぎ込みました。美しいフォントを持つ最初のコンピューターの誕生です。もし大学であの講義がなかったら、マ
    ックには多様なフォントや字間調整機能も入っていなかったでしょう。
    このメッセージは示唆に富んでいます。今に集中することの大切さが込められている気がします。
    ©2023 Junichi Kato, Chatwork Inc 10 / 12

    View Slide

  11. 過度な自己注目を避けよう
    「一の矢」は避けられない苦しみ(生老病死など)
    「二の矢」は自分で放つ苦しみ
    例: なぜ自分だけがこんな目に遭うのだ、働けなくなったら家族はどうすれ
    ばいいのか、介護ばかり受けて申し訳ない、もう人生は終わりだ…
    「私の将来はいったいどうなるのか…」「私は一ヶ月前も似たようなこと
    で怒られた…」などの「二の矢」を放つのは自分です
    先行研究では 自己にこだわる(自己注目する)人ほどメンタルを壊しやすい傾向
    が何度も報告されている。「自分はダメな人間だ」などの否定的な思考がよく
    ないのは当然ですが 「自分はどんな人間なんだろう?」と自分探しなどの時
    間が長い人も不安や抗鬱の症状を起こしやすいことがわかっている
    ネガティブな思考を自己に向けることは、大昔は生存のためには必要なことだ
    ったのかもしれないが、現代ではむしろ自己に注目を向けることで、パフォー
    マンスの最大化を妨げる可能性がある
    出典:『無(最高の状態)』
    ©2023 Junichi Kato, Chatwork Inc 11 / 12

    View Slide

  12. みなさんも自分のキャリアの旅路を
    楽しんでください
    ありがとうございました!
    ©2023 Junichi Kato, Chatwork Inc 12 / 12

    View Slide