Developers Summit 2023に参加しました！！(Day 1)

# 概要

Developers Summit（デブサミ)2023 Inspired
https://event.shoeisha.jp/devsumi/20230209

開催日: 2023/2/9 - 2023/2/10

# 参加セッション一覧

[2月9日]
・10:00 9-A-1 デジタル庁～
・10:55 9-A-2 TiDBと～
・11:50 9-E-3 元大手企業～
・13:15 9-D-4 ソフトウェ～
・14:10 9-D-5 アジリティ～
・15:05 9-A-6 継続的なサ～
・16:00 9-A-7 開発マネー～
・16:55 9-D-8 IaC活用～

## 9-A-1 デジタル庁におけるソフトウェア開発のこれからのはなし -今よりもよい10年後のために必要そうなこと-

デジタル庁のミッション・ビジョン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/c306ab1a-1b04-e3a6-58ae-74a5fcb3ef25.png)

バリュー
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/26bbbd58-e537-052e-7ba1-6a21e87d2f18.png)

デジタル庁設置法
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/73ef0b0d-2a3d-8c2e-aa41-a81c6da8ad01.png)


プロジェクト(一部抜粋)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/cfd1693c-55b6-81a8-67fa-18eebd09ded0.png)

デジタル化・ソフトウェアで目指すこと
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/00dc2ef9-6f8c-8374-9a65-9b8a4d7850e6.png)

労働人口が今後減っていくことはほぼ確実なので、効率を上げて行くしかない。

デジタル化はオンラインで申請できるだけではなく、申請データをより上手に使えるようにすることが大切。
ex.) データ連携、データ活用 ※もちろん、個人情報の取り扱いを考慮する必要がある

### 行政におけるソフトウェア開発

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/6938d83a-c2ed-588c-e2de-27b63b46c3eb.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/feac9ebd-5f62-db1d-2d58-4795f860e53b.png)

専門人材を確保し、開発体制を作る
ただし、調達の問題がある

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/4bf19674-fa87-0c95-5354-f2b3438fd56a.png)

好きに発注できるわけではなく、入札になる
発注する前に事前に仕様書を書き切る必要がある

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/4d14cb97-a478-bd50-e219-fcf8f68142da.png)

### 内製化

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/a5e4103b-c8f5-edb9-e0fd-58c743d7e28d.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/fd52bada-feb6-6eae-1502-79d6e4f03917.png)

作成したコアライブラリをOSS化することも行っていきたい
UKでは実績として行っているものがあるらしい

デジタル庁のエンジニア
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/de14d505-4fc1-2465-32b9-ee612d38bdde.png)

## 9-A-2 TiDBとChatGPTを使えばアプリはもっとシンプル化できる

NewSQLデータベース TiDB
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/efdf5165-7748-bd22-9889-a2c96eaaee9f.png)

OSSの活発度を知る方法
[OSS insight](https://ossinsight.io/)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/85dc8429-23c0-8a58-b8cc-80b9696e1e1c.png)

データストアの選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/6d30289b-0cd3-eb8b-aa48-c8766890f75d.png)

1つのデータストアで全て実現することは難しい
→組み合わせることで解決

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/5864f34f-0df6-5d70-50e7-f08b87be7c05.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/5e94e15b-bb91-bcf2-deba-4f4aa6292a46.png)

NewSQLとは？
https://ja.wikipedia.org/wiki/NewSQL
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/ec320f18-30b0-3352-ccb1-233ba3916cf4.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/0bd10b69-0971-f659-e13a-3ebd202b8c4f.png)

TiDBについて
更新・参照業務と分析業務を1アーキテクチャで実現
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/cb746847-dab2-b689-02d7-bd8a8f8cffdd.png)

### ChatGPTの活用について

ChatGPTを活用してクエリを自動生成する機能があるらしい
→Chat2Query

### まとめ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/15dc7a8e-4757-a89e-f1f0-bd75e8aa903e.png)


## 9-E-3 元大手企業エンジニアが東大関連スタートアップの創業CTOへ！キャリア・事業・社会課題解決のリアルなここだけの話

### 自己紹介

小原さん
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/6df97a44-d4eb-73c6-edaa-fbe9970c5043.png)

川崎さん
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/daeba2fe-71fe-183f-ee2f-c0b4b4343bec.png)

### ディスカッション

昼休みで離脱

宣伝
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/c0969381-d4c8-3ca4-d90b-1ad37e5a9e3f.png)


## 9-D-4 ソフトウェアエンジニアのためのプロジェクトサバイバル術

書籍紹介
https://www.amazon.co.jp/gp/product/B0BF3TMDSS/ref=dbs_a_def_rwt_bibl_vppi_i0
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/3f7a2bdd-b14c-4a85-58e6-a2f615a52478.png)

プロジェクトは人生の質(QOL)に直結する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/7bfe1e63-b8b2-0087-5493-78be5891fdf7.png)

昔の人海戦術作成はもう通用しない

良いプロジェクトは少ない
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/dd0ca126-dd91-5bce-9845-60269a5fea2d.png)

経験が無い登山ガイドに一緒に山に登ろう！と言われるイメージ

すごいエンジニアになってすごいテック企業に入れればOKというわけでも無いかも。
最近はレイオフも行われている状況
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/9f754196-e62a-7f52-b171-a963eb0e4e19.png)

どうやってプロジェクトのジャングルを生き延びるか？
- 優秀だけど嫌な奴にならないこと(Brilliant Jerk)

What is "Brilliant Jerk"?
「悪い姿勢xハイパフォーマンス」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/fce61ddb-7aaa-ee18-a124-90d9705c3950.png)

腐ったりんご実験
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/71bfdac3-6b15-fcd5-60db-e55ba4577a80.png)

なぜソフトウェアエンジニアは"Brilliant Jerk"になるのか

- 周りが技術を理解して無さすぎる
    - 日本では約7割のIT人材がIT企業に集中している
    - 商流が「技術を分かっていない人→技術を分かっている人」になりやすい
- 技術は曖昧さを許容しない
- プロダクト開発の責任を押し付けられる

本人は望まず(自覚なく)Brilliant Jerkになっているケースは多い

現代のプロジェクトはチームプレイである
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/5fa4023a-f5cf-62cf-8afe-36b5f32659c9.png)

本来はプロジェクトマネージャーがコントロールすべき

意識しておくポイント
- モノの領域のエンジニアがヒト、カネの領域に対するコニュニケーションを意識する
- ビジネスサイドとのコニュニケーションを意識する

Brilliant Jerkにならないために
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/ce39f80e-1b53-1279-78d9-6b16d3d51d35.png)
(追加で、働く場所を選ぶ)

- マウントを取らない
    - 自分の専門領域で自分が詳しいのは当たり前
    - 技術に詳しく無い人の話も「要望」や「質問」として一旦受け止める
    - 相手を否定しない、上から話さない(言い方を考える)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/532cc04a-18db-008d-3fde-c9d88bb41817.png)

- 自分の担当領域をブラックボックス化しない
    - できるだけ会話や資料化する
    - 情報や知見をチームメンバーや組織に対してオープンにする
    - 担当領域のブラックボックス化は中長期的に自分の競争力を低減する

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/60f032d2-586a-9042-45f8-c0f37b265edb.png)

- 挨拶/雑談をする
    - 人は相手がどんな人か分からないと不安になる
    - いわゆる「コミュ力」は必要ない
    - 服装・エチケットも配慮

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/5e426b9d-959f-e70a-426c-ed6766670992.png)

- Whatだけでなく、HowやWhenを意識するようにする
    - 「xxは実現できますか？」という質問にどう答えるか
    - 見積もりの技術を磨く
    - 実現する際の課題や必要な前提条件について説明する

- 働く場(プロジェクト)を選ぶ
    - 理解されない、報われない組織やプロジェクトで長く働くことは人生上のリスクになる
    - ずっとディフェンシブに仕事しているとBrilliant Jerkになってしまう
    - 条件だけで就職先やプロジェクトを選ばないことも重要

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/3010b6d5-cee3-5fed-35d8-6970519b9c17.png)

プロジェクトワーカーにとって最高の褒め言葉
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/dd6a99db-5d4a-d478-39cd-dad57eae5f77.png)

結論
良いプロジェクトに参加して良い人生を送ろう！

(とても良いセッションだったので書籍買おう)


## 9-D-5 アジリティ実現に必要な組織プロセス変革の極意と実践事例～実践現場目線で考える、チームに寄り添う組織を実現する方法教えます～

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/2125fa2c-e585-fdca-f13e-102066df21ea.png)

DXにおけるアジャイル
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/8b87699d-eb7b-cc75-9fb6-f8eb2b314d5d.png)

アジャイルとは
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/2453ee73-d07f-2669-835f-8875769724ee.png)

これまでの取り組みで分かったこと
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/50c4d129-45af-075d-26d8-87f0193e1990.png)

NECが考えるアジャイルでの成功とは
チームと組織が調和して一体隣、市場のニーズに応じて迅速な価値提供が再現性高く実現できるようになること
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/dd6bf036-a302-a9e8-74e0-f2e3fa03e875.png)

チームと組織の関係
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/3e039c24-a4ea-0562-80cd-d1fdad7c5f29.png)

ビジョンの共有
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/9644bf3e-6e85-ad55-2e44-11a7ebde84fc.png)

諸事情により、途中まで参加

## 9-A-6 継続的なサービス発展のための技術とアーキテクチャの取り組み

近年翻訳された書籍
→変化し続けることを前提とした知識セット
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/5b98bda3-68bc-2dcf-f0cf-b969875b8dec.png)

疎結合なチームとアーキテクチャ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/d9a4b2a8-5a36-3a83-9e76-0815eb319dc8.png)

Q. チームにアーキテクチャを組み合わせれば良いのか？
A. それだけでは十分ではない
→チームの方も変わるため

アーキテクチャ、チームの両方を一緒に進化させ続ける
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/e04c8782-0c71-e7d5-a376-42e252007315.png)

### 第一部：アーキテクチャ

スタートアップ初期
- 試行錯誤を最速にできる状態
- herokuを使用していたのでインフラチームが存在しない
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/e14e4af6-cb86-179e-0f8a-fe1c271aa4ab.png)

Visitの基本的な成長モデル
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/d9b76810-8942-961b-bcca-30ee43c24df2.png)

成長モデルに対して、アーキテクチャの対応
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/70957006-429f-2a0f-6661-fe0a90ea4bbe.png)

個人向けに異なる水平展開
モバイルアプリも独立してデプロイされる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/8f3e0499-8db2-ed97-95f4-4a8aa7bcb8c6.png)

実際は上記のようにすぐに移行はできなかった
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/9f5d7db4-b52e-fa3c-cbaf-12e5cad26b1d.png)

成長すると新たな課題が出てくる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/765a066b-f642-7237-40e9-9c16457c82fe.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/56166435-7f76-8fae-77ef-de0c4962e688.png)

実際のチーム構成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/45aa384c-7373-14bf-d540-1c56284f2e9f.png)

最初からマイクロサービスで作成する手法も取ってみた
システム的には上手くいった。
しかし、システムが多くなるので重要なサービス価値から遠くなってしまった(チームがサービス価値と向き合いづらくなる)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/cd05a946-151c-0f01-6496-ce8a91a0d260.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/560791f3-ced2-c1a3-0dc7-fa6842a96d2f.png)

レイヤードアーキテクチャで全体を分割
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/dfbbba54-9856-0391-2c1c-ed06f801715c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/b599692f-ef94-f3a9-e548-0eca397f6884.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/babca037-d39a-cb7a-4cd6-5761c44a1bbf.png)


### 第二部：技術

レイヤードアーキテクチャのように階層にする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/c606c6d7-03b4-6ec7-6b28-7b2e4e953942.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/590aa1ba-6fb0-8942-1ffe-b57c38df87ef.png)

アプリとシステムをつなぐ技術
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/7db1daab-714d-1b66-d98c-7bae859e04e5.png)

アーキテクチャに正解は無い
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/5c0692c9-ebbc-5505-4d36-76974e3b8f55.png)

システムの基盤
APIで会話することに組織が慣れておく必要がある
→これができると複数のプロダクトを連携させるような展開もできる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/de2fa7c5-ab59-fa4b-6e8e-056416bf3bbd.png)

分析データの扱いについて
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/47ebf84a-e385-5997-0e91-f175bd8053c1.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/3eef490d-6878-537a-901f-5f6c9181a195.png)

参考文献
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/798a2d51-cfa5-e876-ed55-ffadce466733.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/4347c392-46ff-eddb-4125-e10ea90a2035.png)


## 9-A-7 開発マネージャー1年目が語る、開発マネージャーのお仕事

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/2b1ce3bb-da97-fa25-c11d-d94a50b6daa1.png)

マネージャーに任命されてから書籍を漁った
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/e0105383-4c6d-aa3d-9a1c-7e1d750707dd.png)

### 気づき

- 工数をしっかり測定し、ボトルネックや改善できる点を見つける
    - Toggleを利用して工数を計測
    - 測定結果から振り返り、将来の参考値として利用できる
- 毎日進んでいる感がないとモチベキープが難しい
    - TODO分解で着実にゴールに迫る
        - 達成すると何が嬉しいのか？
        - 自分のキャリアとの結び付け
- やることが多すぎる、何からやるべきかが分かっていない
    - 緊急度、重要度から優先順位を設定する
- ２番目に踊る人になるといいことがある
    - [二人目に踊るやつがいる組織は強い](https://note.com/sho0113/n/n4468b7d5cb0e)
- できないことができるようになることが成長の一つ、日々確実に成長するには
    - 毎日何かしらのコードを書く
    - 毎日プロダクトのコードに触れる
    - 必要そうなコニュニティに突撃する
    - 個人開発で気になる技術に触れる
    - 業務中に練習時間は取りづらい
        - 業務中や業務関連のもので経験をスキルとしてして上げて行くことが重要
            - 学んだことを即実践投入
                - inputからoutputまでの間をあまり置かない
            - 日次振り返り
                - 自力でできなかったことを書き出す
                - TODOリストにする
                - 消しこむ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/530c79fb-7beb-791d-c1aa-d9f0b145f10e.png)


## 9-D-8 IaC活用やDevOps実践からみる、抜けてはまずいプロジェクト推進に必要な「運用設計」の考え方

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/1778d32a-c711-ea40-d1bd-83f7e9eb4ce1.png)

優れたパフォーマンスの企業は全体の2割以下
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/e17dd73a-2a06-1a03-28d3-83ed927901c5.png)

運用とデリバリーパフォーマンスの関係性
1. モニタリング・インシデント対応
1. 改修
1. デプロイ

モニタリング・インシデント対応が悪化すると全体の復旧にかかる時間が増える
→運用パフォーマンスが上がらないと行けない
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/c9350f0a-b294-017e-f301-5eac2e74675d.png)

[原因]
- 開発と運用の連携が取れていない
- 目標が高すぎる
- 作業ミスが多い

パフォーマンスを上げる取り組み
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/8aeb5dc8-4dc2-60ce-9794-1bc8d1f4809b.png)

DevOPsに焦点を当てると
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/45204563-b7b0-a17b-8965-3cb4a5423945.png)

本当にやれているのか？

対策が進まない原因
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/f44097a7-22cb-8c15-4138-1be3410e196e.png)

DevOPsに対する投資効果
よく投資対象から外されてしまうが、これだけの効果が見込まれる
→まずは必要性を訴えて行く必要がある
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/199056/0334b965-736f-4b8d-b00c-4a0057765e98.png)

共通ゴールに対する地図が必要

地図が無いと
- なんでもIaCでやるものだと思い込む→管理工数が増加
- どれだけITスキルがあればいいか不明→対応が属人化

まとめ
- 運用設計は開発が始まる前に着手しよう
- 作成した運用設計を関係者と共有しよう
- 企業としてトータルコストを削減できる！！