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
Node学園 39 時限目資料 kuriyosh
Search
Yoshiki Kurihara
June 27, 2022
Technology
0
160
Node学園 39 時限目資料 kuriyosh
Yoshiki Kurihara
June 27, 2022
Tweet
Share
More Decks by Yoshiki Kurihara
See All by Yoshiki Kurihara
Next.js App Router x @apollo/client
kuriyosh
9
450
Other Decks in Technology
See All in Technology
プロダクトのコードから見るGoによるデザインパターンの実践 #go_night_talk
bengo4com
1
2.7k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
700
AWS Control Tower に学ぶ! IAM Identity Center 権限設計の第一歩 / IAM Identity Center with Control Tower
y___u
1
240
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
490
新規事業におけるGORM+SQLx併用アーキテクチャ
hacomono
PRO
0
430
Zephyr(RTOS)にEdge AIを組み込んでみた話
iotengineer22
0
210
リセラー企業のテクサポ担当が考える、生成 AI 時代のトラブルシュート 2025
kazzpapa3
1
370
CoRL 2025 Survey
harukiabe
1
230
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
3
1k
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
8
1.1k
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
0
130
Featured
See All Featured
Scaling GitHub
holman
463
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
How STYLIGHT went responsive
nonsquared
100
5.8k
Building Adaptive Systems
keathley
44
2.8k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Building Applications with DynamoDB
mza
96
6.7k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
510
GraphQLとの向き合い方2022年版
quramy
49
14k
Being A Developer After 40
akosma
91
590k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Building an army of robots
kneath
306
46k
Transcript
z Node.js の Collaborator になった話 @kuriyosh
z 自己紹介 § ID・名前 § kuriyosh (Yoshiki Kurihara) § 職歴
§ Yuimedi Software Engineer 2021/7~ 原罪 § AWS Support Engineer (Windows) 2019/4 ~ 2021/6 § Windows Server とか、Active Directory とか、VDI とか § 好きなもの § TypeScript, React, Serverless architecture, AWS
z 目次 § Core collaborator とは § コミットを始めたきっかけ § 活動内容
§ 苦労したこと § おわりに
z Node.js collaborator になりました https://kuriyosh.net/blog/2022-05-17
z Node.js の組織 § Triager § Issue の一時受け § Core
collaborator § PRの管理 (レビュー、CI の実行) § Technical Steering Committee § 技術的方向性の決定 § 組織設計
z コミットをはじめたきっかけ § 現職で勤務時間の内 20% の時間を OSS や自己研鑽 に使ってよいというルールがあり何をするか迷っていた §
プロダクト開発を行いたいから転職したものの前職とは 全然違った職種であるため、成功体験がほしかった § 社内に既に collaborator の方が複数人おり @watilde さんに勧められてコミットをはじめてみた
z 最初のコミット § とりあえず Contributing ガイドを読んでどうしたら良いか理解 § https://github.com/nodejs/node/blob/main/CONTRIBUTING.md § PR
投げる体験をしたかったので Typo fix の PR を出してみた § Typo 探すのが面倒だったのでコマンドラインから実行できる Aspell というスペルチェッカーを使って Typo 探しをした § 辞書の作成が結構面倒だったのでもしよければ利用ください § https://gist.github.com/kuriyosh/3b592f90140a98c908e222e1ec1d8e2 2
z 最初の PR
z 続いてやったこと § テストカバレッジ向上 § DNS, HTTP とか § Node.js
の Code の Coverage を掲載してるサイト § https://coverage.nodejs.org/
z テスト追加のフロー § 1. カバレッジからテストが追加されてないコード § 2. テストを追加 § 3.
ローカルでカバレッジ作成 → カバレッジが上がったことを確認 § 4. lint を実行 § 5. PR作成
z テストの追加に関する Tips § テストの追加方法に関するドキュメント § https://github.com/nodejs/node/blob/main/doc/contributing/ writing-tests.md § Test
に利用できる Utils 関数 § https://github.com/nodejs/node/tree/main/test/common
z テスト追加で苦労したこと § 色んなライブラリを駆使して便利に書けるプロダクトのテ ストコード異なりプリミティブなJSで書かれている § 前述の Utils 関数はしっかり把握しておく必要 §
こればっかりは慣れるしかない § コードベースが膨大で誤った理解をしちゃう § 誤った理解で PR を出したりもしたが特に咎められない(優しく 修正してくれる) § TSCはすごい
z オンボーディング § ノミネーションプロセス § 既存の collaborator に GitHub issue
で推薦いただく § 1週間 Issue をオープンにして反対意見なければOK § オンボーディングセッション § 既存の TSC と PR を作成しながらオペレーションを学ぶ § https://github.com/nodejs/node/blob/main/onboarding.md
z 感想 § JS 何もわからん § Collaborator になる前は完全に理解してたけど、なる頃には 何もわからなくなっていた §
Node.js コミュニティの安心感 § 自分が参加した OSS の母数が少ないとはいえ、OSS なのに ここまでプロセスが整っているのは感動した § 英語勉強した方が良い § 先にオンボーディングのドキュメント見ていてよかった
z おわりに § Yuimedi ではエンジニア募集中です。 § 医療用のデータクレンジングソフトウェア Yuicleaner の開発をしています §
技術スタック § 気軽に Twitter で連絡いただけると嬉しいです フロントエンド バックエンド インフラ - React - Next.js - Electron - NestJS - GraphQL - TypeORM - AWS CDK - Cognito - ALB - Fargate - S3 - RDS TypeScript GitHub Asana Docker その他 共通 Node.js