Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
1人システム開発を通じて感じたこと
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
矢島 達朗 / Tatsuro Yajima
December 09, 2023
Business
790
0
Share
1人システム開発を通じて感じたこと
1人でシステム開発を経験する中で感じたことなどをまとめました。
後半はリファクタリングについても言及しています。
矢島 達朗 / Tatsuro Yajima
December 09, 2023
More Decks by 矢島 達朗 / Tatsuro Yajima
See All by 矢島 達朗 / Tatsuro Yajima
なぜ、データ駆動戦略が重要なのか?書籍『DMM.comを支えるデータ駆動戦略』より
tatsuroyajima
0
210
なぜ、コメントを書くべきなのか?(A Philosophy Of Software Designより)
tatsuroyajima
0
250
Other Decks in Business
See All in Business
家族アルバム みてね 事業紹介 / Our Business
familyalbum
7
56k
FERMENSTATION Impact report
fermenstation
0
3.9k
FABRIC TOKYO会社紹介資料 / We are hiring(2026年04月02日更新)
yuichirom
36
380k
ドクターベネフィットG紹介資料‗エムスリー / Introduction of Doctor Benefit Group of M3inc
m3
0
120
採用ピッチデック
macloud
4
86k
Project Facilitation
hiranabe
1
250
Goods-N採用広報資料
goodsn
PRO
0
280
採用ピッチ資料
kasamatsu123
0
770
会社案内資料
sukirabo
0
340
2025年度ICT職専門研修(海外派遣研修)報告書 No.4
tokyo_metropolitan_gov_digital_hr
0
380
アジャイル原則を「使える言葉」にする / Making the Agile Principles Usable
fkino
5
780
合同会社DMM.com ヘルスケア本部 採用ピッチ資料
dmm
0
120
Featured
See All Featured
Side Projects
sachag
455
43k
Code Review Best Practice
trishagee
74
20k
The browser strikes back
jonoalderson
0
870
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
90
A Modern Web Designer's Workflow
chriscoyier
698
190k
Building Applications with DynamoDB
mza
96
7k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
140
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
490
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
160
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
170
Measuring & Analyzing Core Web Vitals
bluesmoon
9
800
Typedesign – Prime Four
hannesfritz
42
3k
Transcript
1人システム開発を通じて感じたこと やじま(株式会社Qureテクノロジーズ)
自己紹介 名前 やじま(矢島達朗) 所属 株式会社Qureテクノロジーズ (自社サービス 開発責任者) 趣味 音楽(ベース) 写真撮影(野良猫・スナップなど)
2
質問 3
みなさまの開発組織は 何名体制ですか? 4
弊社は 1名 体制です 5
弊社のご紹介 株式会社Qureテクノロジーズ - 創業 6期目 - 社員数 3名 - 事業内容
- - 会計コンサル 6
弊社のご紹介 株式会社Qureテクノロジーズ - 創業 6期目 - 社員数 3名 - 事業内容
- - 会計コンサル 7 私の担当領域
Sharesってなに? 株主名簿を管理するためのSaaS 以下の業務を改善します。 - 株主名簿管理 - 株主総会管理 - 配当管理 8
弊社の組織体制 9 弊社代表(経営判断) - 機能の発案 - 要件定義 私(開発) - 要件定義、設計、実装
- テスト、運用 - 顧客対応(商談)
1人システム開発を通じて 感じたこと 10
1人システム開発を通じて感じたこと プラスの側面 1. コードに統一感が出る 2. お客様との距離が近い 3. やりたいことを即実行できる マイナスの側面 1.
レビューを受けられない 2. やることが多い 3. さびしい(切実) 11
1人システム開発 プラスの側面 12
プラスの側面 1. スムーズに開発できる 2. お客様との距離が近い 3. やりたいことを即実行できる 13
プラスの側面 1. スムーズに開発できる 2. お客様との距離が近い 3. やりたいことを即実行できる 14
プラスの側面1. スムーズに開発できる 15 メンバー間の調整が不要です。 フォーマッタどうする? 設計方針は? チーム開発あるある ( 早く開発したいな〜 )
プラスの側面 1. スムーズに開発できる 2. お客様との距離が近い 3. やりたいことを即実行できる 16
プラスの側面2. お客様との距離が近い 17 フィードバックをすぐ開発に反映できます。 アレをアレする機能が欲しいんだけど…… あ〜アレですね、わかりました
18 顧客からはじめる! 関連書籍『みんなでアジャイル』 https://fukabori.fm/episode/32
プラスの側面 1. スムーズに開発できる 2. お客様との距離が近い 3. やりたいことを即実行できる 19
プラスの側面3. やりたいことを即実行できる 20 最近やったこと - バリューオブジェクト導入 - リファクタリング - 自動テスト導入
猫カフェで作業したい
1人システム開発 マイナスの側面 21
マイナスの側面 1. レビューを受けられない 2. やることが多い 3. さびしい(切実) 22
マイナスの側面 1. レビューを受けられない 2. やることが多い 3. さびしい(切実) 23
マイナスの側面1. レビューを受けられない 24 変なコードを書いていたとしても、気付けない 可能性があります。 出典: https://twitter.com/mdkgames22/status/1030048531606695936 ( 自分で書いたから大丈夫! )
マイナスの側面 1. レビューを受けられない 2. やることが多い 3. さびしい(切実) 25
マイナスの側面2. やることが多い 26 開発以外の業務が多いです。 スイッチングコストが高い! 顧客対応 補助金申請 コラム執筆
マイナスの側面 1. レビューを受けられない 2. やることが多い 3. さびしい(切実) 27
マイナスの側面3. さびしい(切実) 28 技術的な雑談ができない! 新技術・新サービスの情報が入ってこない。 状況を打破するため、勉強会に参加す るようになりました
おまけ 29
こんなリファクタリングしてます 30
1. 早期リターン 2. ファットコントローラーの解消 3. バリューオブジェクト導入 31 こんなリファクタリングしてます
1. 早期リターン 2. ファットコントローラーの解消 3. バリューオブジェクト導入 32 こんなリファクタリングしてます
1. 早期リターン 33 Before
34 Before - ずっと条件式を意識する必要がある - ネストが深くなりがち - 可読性が下がる 1. 早期リターン
35 After 1. 早期リターン
36 After すぐリターンする! ネストが浅くなる 1. 早期リターン
1. 早期リターン 2. ファットコントローラーの解消 3. バリューオブジェクト導入 37 こんなリファクタリングしてます
38 2. ファットコントローラーの解消 Before(実際にあった怖いコントローラー)
39 2. ファットコントローラーの解消 Before - エディタの動作が遅くなる - 目当てのコードを探す手間が増える
40 2. ファットコントローラーの解消 After 以下の対策を行います。 1. 処理を移植する(モデル層・サービス層) 2. 細かくメソッド化して、共通化する -
DRY原則 - 宣言的な記述 を意識しています
1. 早期リターン 2. ファットコントローラーの解消 3. バリューオブジェクト導入 41 こんなリファクタリングしてます
42 3. バリューオブジェクト導入 Before
43 3. バリューオブジェクト導入 Before 可読性が低い! 変更する時大変! つらい
44 3. バリューオブジェクト導入 After
45 3. バリューオブジェクト導入 プロパティのみのクラス でデータを管理します
まとめ 46
1人システム開発を通じて感じたこと プラスの側面 1. スムーズに開発できる 2. お客様との距離が近い 3. やりたいことを即実行できる 47
1人システム開発を通じて感じたこと マイナスの側面 1. レビューを受けられない 2. やることが多い 3. さびしい(切実) 48
49 ご清聴ありがとうございました! 感想お待ちしています