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
sugiyama
Search
akatsukinewgrad
January 08, 2021
Programming
0
1.1k
sugiyama
akatsukinewgrad
January 08, 2021
Tweet
Share
More Decks by akatsukinewgrad
See All by akatsukinewgrad
2023/1/25_QAテスター meet up!
akatsukinewgrad
0
130
成果発表資料.pdf
akatsukinewgrad
0
2k
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
akatsukinewgrad
0
560
正規表現とReDoS.pdf
akatsukinewgrad
0
540
Unityで大量のオブジェクト_を吹き飛ばしたい.pdf
akatsukinewgrad
0
590
新卒2年目が思う1年目の学び.pdf
akatsukinewgrad
0
510
障害訓練の取り組みについて.pdf
akatsukinewgrad
0
690
7分でわかるアカツキゲームス
akatsukinewgrad
0
560
Bitcoinだけでスマートコントラクト.pdf
akatsukinewgrad
1
880
Other Decks in Programming
See All in Programming
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
110
Team topologies and the microservice architecture: a synergistic relationship
cer
PRO
0
1.1k
NPOでのDevinの活用
codeforeveryone
0
460
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
150
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
390
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
48
32k
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
240
Benchmark
sysong
0
280
Goで作る、開発・CI環境
sin392
0
170
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
270
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
980
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
110
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Automating Front-end Workflow
addyosmani
1370
200k
Designing Experiences People Love
moore
142
24k
Practical Orchestrator
shlominoach
188
11k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Why Our Code Smells
bkeepers
PRO
337
57k
Done Done
chrislema
184
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Building Adaptive Systems
keathley
43
2.6k
Designing for Performance
lara
609
69k
Transcript
競プロと業プロの関係性について 2020/12/14 21卒内定者 杉山 悠司 (すぎやん) 1
軽く自己紹介 名前: 杉山 悠司 (すぎやま ゆうじ) 職種: 21卒内定者 エンジニア職 (サーバサイド)
所属: 東京大学大学院 修士2年 興味: GCP, Go, 自然言語処理 競プロ歴: 2年半程度 AtCoder 青~黄くらい 最近のトレンド: ハニプレ,原神,REALITY Twitter: @yuji9511_compro 2
今回のテーマ • 競プロ 競技プログラミングの略称 数学・パズルチックな問題をいかに素 早く正確に解けるかを 競うゲーム性の高い競技 • 業プロ(たぶん造語) ソフトウェアエンジニアが業務で
行うような通常のプログラミング、つま りお仕事のこと https://twitter.com/chokudai/status/1016244862344036352 3
今日伝えたいこと! 世間でいま競プロがどう捉えられているのかを共有したい (まだ学生なので学生寄りの目線からの話になります) 学生の方へ ✔ 開発など何から始めたらいいかわからない状態の人にとってはかなりお すすめのコンテンツで,最近社会的な評価も上昇中 企業の方へ ✔まだ何にも染まってない優秀な人材がたくさんいるかも... 4
自己アピールでありがちなシチュエーション(1) 何かこれまでに作った成果物とかありますか? 技術自体には興味あるんだけど,特に何か作ってみたいかと 言われても,うーん… 5
開発へのきっかけとしての競プロ •何から始めたらいいかわからないが,開発などにつながる何かをしてみた いという理由で競プロで始める人が多い (僕自身もそうでした •それぞれの開発分野をスポーツとすると競プロは筋トレのような立ち位置 になりそう。特定の分野に直接役立つわけではないけど基礎固めにはなる イメージ 6
自己アピールでありがちなシチュエーション(2) なるほど。他には何かありますか? 競技プログラミングやってます。 今は◦色でレーティングがこれくらいで… あれ、思ったより響かないな… 7
当然直結させるのは難しい そもそも性質が全く異なるから •競技プログラミング – いかに速く所望の処理を書くことができるか コードは使い捨てることが多い •業務のプログラミング – 保守性と可読性を重視したプログラミング,採用す る技術選定も慎重に
8
伝え方を工夫してみる •もちろん、競プロを楽しむために競プロをしているなら 必ずしも気にする必要はない •でもどうせなら自分のスキルの一つとしてアピールしたい ⇨ それを始めたことでどんなことが身についたか、何が変化したかを考え てみる 9
例えば… •アプリケーションの内部ロジックを見たときに反射的に計算量が妥当か確 認するクセがついた •競プロをしていてこんな管理ツールがあったらなあと感じたので調べて自 分で簡易的なサービスを作ってみた •自分の実力が伸び悩んだ時にはこのような心構えでこんな工夫をして乗り 切った 10
自分の場合は(1) 競プロをしていたことでいくつか作ってみたいものができた •オンラインジャッジってどうなってるんだろう,自作できるのかな ⇨ ジャッジサーバ,負荷分散, Google Cloud Microservices •過去の自分の似ているコードとか 柔軟に検索してみたいな
⇨ Elasticsearch,Kibana, Amazon Elasticsearch Service https://yosupo.hatenablog.com/entry/2020/01/02/001617 11
自分の場合は(2) •役に立たなくてもウケそうなものはとりあえず作ってみる •世界に一つだけ(偽造)のAtCoderの レーティンググラフが作れるアプリ - グラフの色を変更できる - グラフ上の点をマウスで つまんで好きなところへ移動できる https://atcoder-ratinggraph-generator.herokuapp.com/
12
最近の変化(1) 認知度が広がり競プロの実績自体を生かす仕組みが生まれつつある •就職・転職の斡旋 – レートを足切りとして応募が可能 https://jobs.atcoder.jp/ 13
最近の変化(2) •コーディング能力の資格化 - 有料で検定を実施して公式認定を行う https://past.atcoder.jp/ 14
しかしまだ範囲は限定的... •徐々に多様な業界に広がってきてはいるものの,競プロの性質上 機械学習や数理最適化などの分野への偏りが見られる •より幅広い職種とのコネクションが築いていけると嬉しい (僕が今回この話をしようと思った理由もそういうことです、 布教は大事。 15
もう少しゲーム寄りに: CodinGame https://www.codingame.com/start 競プロは数学色が強いので向き不向きがある 自分で書いたコードをゲーム盤面上で動作させて他プレイヤーと対戦 一定の勝率を得ることでランクが上がっていく フランス発のサービスだが 日本ユーザも急増している 16
ポテンシャルの高い学生が多くいる (この辺は完全に主観ですが...笑 • 競プロをしている人の中にはインターンなどに積極的に行かない人がいるため多 くの企業には認知されていない • そのようなポテンシャルの高い学生を 一部の企業が入れ食い状態 • コミュニティが比較的大きく、横のつながり
もあるので技術力を持った知り合いの 紹介も行われやすい 17 https://www.discoverychannel.jp/campaign/ddcc2020/
まとめ •競プロをただ楽しむだけではなく、仕事など様々なことに活かせるような仕 組みが最近できつつある •より認知度が広がって様々な領域の人に魅力が伝わればいいなと 思っています (競プロの中身の話はほとんどしませんでしたが、興味のある人はぜひお声 がけください!) すぎやん (Twitter: @yuji9511_compro)
18