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
北米のソフトウェア開発
Search
mahata
July 21, 2017
Technology
3
530
北米のソフトウェア開発
「BPStudy#119」の発表資料
mahata
July 21, 2017
Tweet
Share
More Decks by mahata
See All by mahata
Developer Tools
mahata
0
110
本番環境と開発環境で使える コンテナイメージ運用 / Kubernetes Meetup Tokyo #2
mahata
2
4.2k
Introduction to Docker
mahata
0
62
Other Decks in Technology
See All in Technology
作曲家がボカロを使うようにPdMはAIを使え
itotaxi
0
420
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
1.6k
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
260
「Chatwork」の認証基盤の移行とログ活用によるプロダクト改善
kubell_hr
1
240
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
220
AWS Organizations 新機能!マルチパーティ承認の紹介
yhana
1
240
Backlog ユーザー棚卸しRTA、多分これが一番早いと思います
__allllllllez__
1
120
改めてAWS WAFを振り返る~業務で使うためのポイント~
masakiokuda
1
210
mrubyと micro-ROSが繋ぐロボットの世界
kishima
3
390
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
310
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
530
マネジメントって難しい、けどおもしろい / Management is tough, but fun! #em_findy
ar_tama
3
390
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
How GitHub (no longer) Works
holman
314
140k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Become a Pro
speakerdeck
PRO
28
5.4k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
A Modern Web Designer's Workflow
chriscoyier
694
190k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
A Tale of Four Properties
chriscoyier
160
23k
Making Projects Easy
brettharned
116
6.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
680
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Transcript
北米のソフトウェア開発 (BPStudy#119) 真幡 康徳 @スマートニュース株式会社
お品書き 1. 北米でソフトウェア開発者として働く方法 2. 北米のエンジニアリング文化 3. 地理的に分散した開発拠点を作る方法
自己紹介
略歴 • 2005年: Yahoo! Japan 入社 (新卒) • (転職3回) •
2010年: VOYAGE GROUP 退社 • 2011年: 渡加 (BC州バンクーバー) • 同年: Hootsuite, Inc. 入社 • 2015年: Hootsuite, Inc. 退社 • 2017年: SmartNews 入社
略歴 • 2005年: Yahoo! Japan 入社 (新卒) • (転職3回) •
2010年: VOYAGE GROUP 退社 • 2011年: 渡加 (BC州バンクーバー) • 同年: Hootsuite, Inc. 入社 • 2015年: Hootsuite, Inc. 退社 • 2017年: SmartNews 入社 気持ちの変化
気持ちの変化 • 国内に「転職したい」企業がなくなった • シリコンバレーへの憧れが強くなった
気持ちの変化
お品書き 1. 北米でソフトウェア開発者として働く方法 2. 北米のエンジニアリング文化 3. 地理的に分散した開発拠点を作る方法
北米とは • すなわち「アメリカ合衆国」
北米とは • すなわち「アメリカ合衆国」 • そして「カナダ」
北米とは • すなわち「アメリカ合衆国」 • そして「カナダ」 • さらに「メキシコ」
北米とは • すなわち「アメリカ合衆国」 • そして「カナダ」 • さらに「メキシコ」 今回お話する対象
None
None
シリコンバレー
シリコンバレー
バンクーバー
えっ... • シリコンバレーで働きたいのでは?
えっ... • シリコンバレーで働きたいのでは? • そうなんです (´・ω・`)
唐突ですが
北米で働くために必要なのは?
北米で働くために必要なのは? • もちろん英語力
北米で働くために必要なのは? • もちろん英語力 • ...ではなく、就労許可証 (就労ビザ)
就労ビザを取得する正攻法 • 現地の企業にスポンサーしてもらう ◦ 1. 日本支社 (本社?) からの転勤 ◦ 2.
日本から現地企業への転職 • 現地の大学を卒業する • 現地国籍の配偶者を作る
就労ビザを取得する正攻法 • 現地の企業にスポンサーしてもらう ◦ 1. 日本支社 (本社?) からの転勤 ◦ 2.
日本から現地企業への転職 • 現地の大学を卒業する • 現地国籍の配偶者を作る 全部難しくないですか... (´・ω・`)
簡単にビザを 手に入れたい
ご存知ですか? ワーキングホリデー • 海外で「ワーク」と「ホリデー」を楽しめる制度 ◦ ワーク: 「就労ビザ」 ◦ ホリデー: 「観光ビザ」
• (言い換えると...) 高性能ビザ発行制度
なにそれ 最高じゃん?
ワーキングホリデーの実際 • 年齢制限あり (おおむね30才) • ワーキングホリデー協定参加国のみで有効 ◦ カナダ ◦ オーストラリア
◦ イギリス ◦ etc.
ワーキングホリデーの実際 • 年齢制限あり (おおむね30才) • ワーキングホリデー協定参加国のみで有効 ◦ カナダ ◦ オーストラリア
◦ イギリス ◦ etc. アメリカ合衆国は対象外
ワーキングホリデーの実際 • 年齢制限あり (おおむね30才) • ワーキングホリデー協定参加国のみで有効 ◦ カナダ ◦ オーストラリア
◦ イギリス ◦ etc. 当時は消極的な選択だった
ちょっと待ってほしい • 年齢オーバーなんだが... (´・ω・`)
(再掲) 就労ビザの取得方法 • 現地の企業にスポンサーしてもらう ◦ 1. 日本支社 (本社?) からの転勤 ◦
2. 日本から現地企業への転職 • 現地の大学を卒業する • 現地国籍の配偶者を作る
最短で大学を攻略 • 社会人向けの短期コース ◦ がんばれば9ヶ月で卒業可能 ◦ e.g. UC Berkeley Extension
復習 しましょう
北米で働くために必要なのは? • もちろん就労許可証 (就労ビザ)
北米で働くために必要なのは? • もちろん就労許可証 (就労ビザ) • ...だけではなく、英語力
英語学校の選び方 • 総合大学付属の語学学校がオススメ ◦ 各専攻の学生と仲良くなるチャンス ▪ 技術的な文章を添削してもらえるかも
英語学校の選び方 • 総合大学付属の語学学校がオススメ ◦ 各専攻の学生と仲良くなるチャンス ▪ 技術的な文章を添削してもらえるかも 英語の先生が 必ずしも技術用語に 明るいわけではない
英語学校の選び方 • 総合大学付属の語学学校がオススメ ◦ 各専攻の学生と仲良くなるチャンス ▪ 技術的な文章を添削してもらえるかも
お品書き 1. 北米でソフトウェア開発者として働く方法 2. 北米のエンジニアリング文化 3. 地理的に分散した開発拠点を作る方法
ソフトウェア技術者は 尊敬の対象 • 例)「俺、プログラマやってるんだ」
ソフトウェア技術者は 尊敬の対象 • 例)「俺、プログラマやってるんだ」 ◦ 日本: 「そっか、大変だね... (´・ω・`)」 ◦ 北米:
「すごい! カッコいい!!」 (一部誇張あり)
ソフトウェア技術者 in 北米 • 難しいことを理解していると思われている ◦ いわゆる文系プログラマは少ない ◦ (一般に) 採用ハードルは高い
▪ 新卒一括採用もない • インターンからの入社はありえる • 高給取りだと思われている
北米企業のつらいところ • 解雇が非常にカジュアル ◦ 生存戦略が必要 ▪ 自身の成果を周囲にアピール ▪ 替えのきかない仕事の選択
北米企業のつらいところ • 解雇が非常にカジュアル ◦ 生存戦略が必要 ▪ 自身の成果を周囲にアピール ▪ 替えのきかない仕事の選択
私の Hootsuite でのロールの変化 • 2011~2012: アプリケーション開発者 (PHP/JavaScript) • 2012~2014: ローカライズ技術者
(Python) • 2015: DevOps エンジニア
私の Hootsuite でのロールの変化 • 2011~2012: アプリケーション開発者 (PHP/JavaScript) • 2012~2014: ローカライズ技術者
(Python) ◦ (少なくとも) 二ヶ国語の理解が必須 ◦ (社内で) 非主流のプログラミング言語の理解が必須 • 2015: DevOps エンジニア
私の Hootsuite でのロールの変化 • 2011~2012: アプリケーション開発者 (PHP/JavaScript) • 2012~2014: ローカライズ技術者
(Python) • 2015: DevOps エンジニア ◦ 色々な “歴史的経緯” の理解が必須
北米企業の給与 • (基本的に) 交渉しなければ昇給しない ◦ 例えば 1 on 1 などで主張する
• 入社時の給与交渉も普通に行われる
私の北米時代の給与の変遷 • (オフレコ)
北米の技術チームの典型的構成 • プロダクトマネージャ • エンジニアリングマネージャ • ソフトウェアエンジニア ◦ テックリード ◦
シニア / ジュニア
北米の技術チームの典型的構成 • プロダクトマネージャ • エンジニアリングマネージャ • ソフトウェアエンジニア ◦ テックリード ◦
シニア / ジュニア ディレクター相当? チームリーダー相当?
北米の技術チームの典型的構成 • プロダクトマネージャ ◦ プロダクトに責任を追う • エンジニアリングマネージャ • ソフトウェアエンジニア ◦
テックリード ◦ シニア / ジュニア
北米の技術チームの典型的構成 • プロダクトマネージャ • エンジニアリングマネージャ ◦ チームビルドに責任を負う • ソフトウェアエンジニア ◦
テックリード ◦ シニア / ジュニア
北米の技術者採用 • スキル要求がかなり限定的 ◦ 日本: 「要プログラミング経験3年」 ◦ 北米: 「要Rails経験3年」 ▪
チームごとに採用するため
北米の技術者採用 • カバーレター文化 • リファラル文化 • 電話文化
北米の技術者採用 • カバーレター文化 ◦ 画一的なレジュメでは相手にされない ◦ 募集要項に即したレターを書く • リファラル文化 •
電話文化
北米の技術者採用 • カバーレター文化 • リファラル文化 ◦ 人気企業はリファラルがないと面接にたどり 着けない ◦ Meetup
などであらかじめツテを作る • 電話文化
北米の技術者採用 • カバーレター文化 • リファラル文化 • 電話文化 ◦ 現地面接の前に電話でふるいにかけること が普通
北米の技術者採用 - 事例紹介 • (オフレコ)
北米の技術者面接 • ほぼ間違いなく技術者が面接する ◦ 入社したら同僚になる人間 ◦ 入社したら上司になる人間 • ほぼ間違いなく技術的なトピックが聞かれる •
かなり時間をかけて面接される ◦ まるまる数日かけて選別されることもある
北米の技術者面接 • ホワイトボードコーディングはある程度のパター ンがある
北米の技術者面接
北米の技術者面接 (例) • 一般的なスタックのように、push() と pop() が可 能で、さらにスタック中から最大の要素を返却す る getMax()
が実装されたスタッククラスを作成し てください。なお、getMax() は O(1) で動作する ものとします。
お品書き 1. 北米でソフトウェア開発者として働く方法 2. 北米のエンジニアリング文化 3. 地理的に分散した開発拠点を作る方法
大前提 • 開発拠点の分散は とても 難しい • 前職でも開発拠点は分散させていない
開発拠点を分散させる難しさ • 言語の壁 • タイムゾーンの壁 • 空気感 (?) の壁
開発拠点間の言語の壁 • 歯を食いしばってがんばるしかない
開発拠点間の言語の壁 • 歯を食いしばってがんばるしかない • ...が、仕組みでカバーできる部分も
SmartNews の最近の取り組み
まだ道半ば • たとえば、ボットはどうローカライズする?
まだ道半ば
開発拠点間の時差の壁 • Google Calendar は優秀 ◦ 設定次第でかなり時差を吸収できる
開発拠点間の時差の壁
開発拠点間の時差の壁
常に相手のタイムゾーンを意識 • たとえば Clocker
便利ツールまじ便利 • とはいえ... ◦ 同じ空間を共有する方が相互理解は深まる ▪ 交流を促す仕組みが求められる
None
今日お話したこと 1. 北米でソフトウェア開発者として働く方法 2. 北米のエンジニアリング文化 3. 地理的に分散した開発拠点を作る方法
今日お話したこと 1. 北米でソフトウェア開発者として働く方法 2. 北米のエンジニアリング文化 3. 地理的に分散した開発拠点を作る方法 道半ば (´・ω・`)
一緒にやって いきましょう
まずは気軽にランチでも
None
Thanks!