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
kintone新機能開発のお仕事
Search
ryounasso
November 22, 2023
Programming
2
100
kintone新機能開発のお仕事
「若手エンジニア登壇!25新卒向けサイボウズ会社説明会」で発表した資料
ryounasso
November 22, 2023
Tweet
Share
More Decks by ryounasso
See All by ryounasso
開発効率向上のためのリファクタリングの一歩目の選択肢 ~コード分割~ / JJUG CCC 2024 Fall
ryounasso
0
2.1k
Clean Architecture by TypeScript & NestJS
ryounasso
0
640
Fast API を用いた Web API の開発
ryounasso
0
460
テストゼロの個人開発プロジェクトにテストを導入した話
ryounasso
0
370
簡易 DI コンテナを作って DI コンテナを知る
ryounasso
1
890
TypeScript_コンパイラの内側に片足を入れる
ryounasso
3
700
Other Decks in Programming
See All in Programming
GoとPHPのインターフェイスの違い
shimabox
2
210
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.3k
CDK開発におけるコーディング規約の運用
yamanashi_ren01
2
260
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
9
3.2k
15分で学ぶDuckDBの可愛い使い方 DuckDBの最近の更新
notrogue
3
530
もう僕は OpenAPI を書きたくない
sgash708
6
1.9k
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
320
PEPCは何を変えようとしていたのか
ken7253
3
260
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
1.1k
color-scheme: light dark; を完全に理解する
uhyo
7
490
ナレッジイネイブリングにAIを活用してみる ゆるSRE勉強会 #9
nealle
0
160
なぜイベント駆動が必要なのか - CQRS/ESで解く複雑系システムの課題 -
j5ik2o
14
4.7k
Featured
See All Featured
Writing Fast Ruby
sferik
628
61k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Navigating Team Friction
lara
183
15k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Transcript
サイボウズ株式会社 kintone新機能開発の お仕事 kintone 新機能開発チーム
kintone とは? 2
3 kintone(キントーン)とは kintoneは現場の⼈が主体の業務改善を⽀援するプラットフォームです。 直感的なUI/UXで、データや業務プロセスを管理するための「アプリ」を作成 できます。 ノーコード コードを書かずに アプリケーションを 開発できる ローコード
少ないコードで アプリケーションを 開発できる ×
4 kintone(キントーン)とは プログラミングの知識がなくても業務アプリを簡単に作ることができる ドラッグ & ドロップで簡単に作成可能 エンジニアでなくても、現場で欲しいアプリを ⾃分で作成できる
5 kintone(キントーン)とは お⾦・時間をかけて エンジニアや社内外の開発チームに依頼 ⾃⾝でアプリを開発・改善できる︕ 業務改善したい 業務改善したい
6 kintoneのコードについて ⾔語・フレームワークなど サーバーサイド : Java, Spring Boot フロントエンド :
JavaScript, TypeScript, Closure Library, React Closure Library は React へ置き換え中︕ kintoneの内部を(こっそり)Reactに置き換えるチームがあるってホント︖ https://blog.cybozu.io/entry/2022/04/14/110000 規模間 サーバーサイド : 350,000 ⾏以上 フロントエンド : 370,000 ⾏以上
kintone新機能開発チーム とは? 7
8 kintone新機能開発チームって何をするの︖ • kintoneの新機能を開発 • お問い合わせ対応 • 社内外から来る製品に関するお問い合わせに対して調査、回答 • 例)
カスタマーサポートからのエスカレーション
9 kintone新機能開発チームとは ソフトウェアエンジニア 47⼈ QAエンジニア 17⼈ デザイナー&リサーチャー 17⼈ プロダクトマネージャー 8⼈
プロダクトライター 7⼈ チーム運営 2⼈ エ ン ジ ニ ア ( P G ) 新 機 能 開 発 メ ン テ ナ ン ス フ ロ ン ト エ ン ド 刷 新 AW S 版 k i n t o n e . c o m k i n t o n e D X 今 ⽇ 紹 介 す る の は コ コ ︕ 125⼈
10 kintone新機能開発チームについて • データ登録 • グラフ • JS API •
システム管理 • Oauth • ファイル読み込み・書き出し • スペース、スレッド、 メッセージ • ポータル • モバイルビュー • ビュー設定 • グラフ設定 • アプリ設定 アプリ アプリ設定 システム管理・ 外部連携 ナビゲーション・ コミュニケーション
新機能開発の流れ 11
12 新機能開発の流れ 仕様書修正 実装 試験実装 受け⼊れ確認 QAによる試験 リリース
13 仕様書修正 新機能の仕様を仕様書に追記する • 仕様書は誰が読んでも同じ解釈ができるように書く • 開発チーム内で新機能に対する共通認識を持てる • PGがPMの意図通りのものを作れる •
QAが試験項⽬を考えられる • プロダクトライターがヘルプページを作れる • お客様からのお問い合わせに答えられる 仕様書修正 実装 試験実装 受け⼊れ確認 QAによる試験 リリース
14 実装 • 基本的にはモブプログラミングで進める • 実装内容によっては個⼈で進めることもある • サーバーサイドもフロントエンドも書く 下記のようなことを意識することが多い •
今後機能追加するときに破綻する設計になっていないか • 他の機能への影響はないか 仕様書修正 実装 試験実装 受け⼊れ確認 QAによる試験 リリース
15 試験実装 • 回帰試験を実装する • 新機能に対する主要なテストを⾃動化する • マージのたびにCIで実⾏してデグレードを防ぐ 仕様書修正 実装
試験実装 受け⼊れ確認 QAによる試験 リリース
16 受け⼊れ確認 プロダクトマネージャーに意図した通りの機能が 実装できているか確認してもらう 仕様書修正 実装 試験実装 受け⼊れ確認 QAによる試験 リリース
17 QAによる試験 QAエンジニアの⽅が試験を設計・実施する ここで不具合が確認されると再度修正を⾏う 仕様書修正 実装 試験実装 受け⼊れ確認 QAによる試験 リリース
18 リリース リリース後には楽しみがたくさん︕︕ • お客様の喜びの声が何より嬉しい︕︕ • アンケート、お問い合わせ、SNS (X, note...) などで嬉しい
コメントをいただけることが多い • お客様のフィードバックをもとに新機能の検討が始まることも 仕様書修正 実装 試験実装 受け⼊れ確認 QAによる試験 リリース
最近取り組んだ仕事 19
20 最近取り組んだ仕事① 「同じ名前のアプリの存在を知らせる機能」の実装 アップデート情報 : https://kintone.cybozu.co.jp/update/main/2023-09.html アプリを作る際に、似たアプリの存在に気づかなかった場合… • 同じ⽤途のアプリが増えてしまう •
利⽤する際に、どのアプリが最新の情報を持っているのか分かりづらくなる 作成中に気づけるようになると⼿間がかかりづらくなる︕ 対策 : アプリを作る前に似たアプリがないかを検索したり、内容を確認する必要がある Aさん : 顧客情報アプリ Bさん : 顧客管理アプリ Cさん : 顧客アプリ 例
21 最近取り組んだ仕事① 「同じ名前のアプリの存在を知らせる機能」の実装 アップデート情報 : https://kintone.cybozu.co.jp/update/main/2023-09.html • 作成しようとしているアプリと似た参考に できそうなアプリを⾒つけられる •
同じ⽤途と思われるアプリが既に存在している ことに気づきやすくなる 不要なアプリや⾒分けづらい名前のアプリが 増えてしまう可能性を減らすことができる FEもBEも開発︕ デザイナーの⽅とも協⼒︕
22 最近取り組んだ仕事② 複雑性に⽴ち向かうためのサーバーサイドコード分割 (Cybozu Inside Out) https://blog.cybozu.io/entry/2023/03/14/110000 • kintoneがリリースされて 10
年経過し、コードの複雑性が増してきた • それにより、新しく参加した⼈がコードの把握に時間がかかり始めた • 影響範囲の把握も難しくなってくる サーバーサイドリファクタリング (コード分割) kintone アプリ アプリ 設定 設定 アプリ 同じ部分を使っている 懸念点 • 変更した時の影響がわかりづらい • アプリと設定のどちらの知識も必要なケース
23 最近取り組んだ仕事② 複雑性に⽴ち向かうためのサーバーサイドコード分割 (Cybozu Inside Out) https://blog.cybozu.io/entry/2023/03/14/110000 • kintone の機能に従ってコードをまとめる
• 性質上関わらない機能の場合、対応するコードも関わらないようにする サーバーサイドリファクタリング (コード分割) kintone アプリ アプリ 設定 アプリ ⽬指す形 kintone アプリ アプリ 設定 設定 アプリ 設定
24 まとめ • kintoneはエンジニアでなくても、現場で欲しいアプリを⾃分で作成できる • 新機能開発チーム • 様々な職種の⽅がいて、協⼒し合いながら1つの機能を完成させる • 機能開発以外にも探求時間で改善なども⾏える
こんな⼈におすすめ︕ • 1 を 100 にしていくのが好きな⼈ • より使いやすく、より便利にしたい⼈