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
510
北米のソフトウェア開発
「BPStudy#119」の発表資料
mahata
July 21, 2017
Tweet
Share
More Decks by mahata
See All by mahata
Developer Tools
mahata
0
100
本番環境と開発環境で使える コンテナイメージ運用 / Kubernetes Meetup Tokyo #2
mahata
2
4.1k
Introduction to Docker
mahata
0
61
Other Decks in Technology
See All in Technology
What's new in Go 1.24?
ciarana
1
120
DeepSeekとは?何がいいの? - Databricksと学ぶDeepSeek! 〜これからのLLMに備えよ!〜
taka_aki
1
170
20250304_赤煉瓦倉庫_DeepSeek_Deep_Dive
hiouchiy
2
120
MIMEと文字コードの闇
hirachan
2
1.5k
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
1
130
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
9
4k
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
130
どちらかだけじゃもったいないかも? ECSとEKSを適材適所で併用するメリット、運用課題とそれらの対応について
tk3fftk
2
270
AWS Well-Architected Frameworkで学ぶAmazon ECSのセキュリティ対策
umekou
2
150
AI Agent時代なのでAWSのLLMs.txtが欲しい!
watany
3
360
事業を差別化する技術を生み出す技術
pyama86
2
500
OCI Success Journey OCIの何が評価されてる?疑問に答える事例セミナー(2025年2月実施)
oracle4engineer
PRO
2
220
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Visualization
eitanlees
146
15k
Unsuck your backbone
ammeep
669
57k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
How to Ace a Technical Interview
jacobian
276
23k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
How STYLIGHT went responsive
nonsquared
99
5.4k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Building Adaptive Systems
keathley
40
2.4k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
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!