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
競プロ布教LT
Search
zakisan
April 17, 2021
Technology
0
120
競プロ布教LT
エンジニア転職や実務で競プロは役に立つと言いたかった...
zakisan
April 17, 2021
Tweet
Share
More Decks by zakisan
See All by zakisan
[2024-06-19 Japanglish Tech Talk] Building My First Infrastructure The way from EC2 to ECS
zakisankazu
0
110
Other Decks in Technology
See All in Technology
Data Intelligence on Lakehouse Paradigm
scotthsieh825
0
180
SOC2は、取った瞬間よりその後が面白い
3flower
0
120
Master Dataグループ紹介資料
sansan33
PRO
1
4.2k
AWS Network Firewall Proxyで脱Squid運用⁈
nnydtmg
1
120
困ったCSVファイルの話
mottyzzz
0
330
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
新米スクラムマスターの4ヶ月 -「スクラムイベントを回しているのに手応えがない」からの脱出 / Four Months as a New Scrum Master — When Scrum Events Were Running, but Nothing Felt Right
owata
0
200
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
410
歴史から学ぶ、Goのメモリ管理基礎
logica0419
14
2.9k
ReproでのicebergのStreaming Writeの検証と実運用にむけた取り組み
joker1007
0
180
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
840
スクラムを一度諦めたチームにアジャイルコーチが入ってどう変化したか / A Team's Second Try at Scrum with an Agile Coach
kaonavi
0
270
Featured
See All Featured
Designing for Performance
lara
610
70k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
49
Statistics for Hackers
jakevdp
799
230k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Color Theory Basics | Prateek | Gurzu
gurzu
0
180
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
69
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
290
Unsuck your backbone
ammeep
671
58k
Thoughts on Productivity
jonyablonski
74
5k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
100k
Transcript
Webエンジニアのキャリア形 成と競技プログラミング 〜コーディングテストを乗り越えて(実務経験1年編)〜 2021/04/18 twitter:@zaki_chemtech
自己紹介 . . ・ A P I . . ・
もくじ ・(Web業界の)エンジニア採用スキーム ・競技プログラミングとは? ・実際に解いてみよう! ・まとめ
(Web業界の)エンジニア採用スキーム(1) 書 類 応 募 技 術 面 接 技術責
任者 人 物 面 接 役員 カ ル チ ャ | マ ッ チ 面 談 メンバー達 (イケてる企業の?)採用スキーム例 ス キ ル チ ェ ッ ク 課題 b a c k c h e c k
(Web業界の)エンジニア採用スキーム(1) 書 類 応 募 技 術 面 接 技術責
任者 人 物 面 接 役員 カ ル チ ャ | マ ッ チ 面 談 メンバー達 (イケてる企業の?)採用スキーム例 発表者のスキルチェックの 突破率は(一応)100%!! ス キ ル チ ェ ッ ク 課題 b a c k c h e c k
(Web業界の)エンジニア採用スキーム(2) スキルチェックの内容 注:n1データなので参考までに ....
(Web業界の)エンジニア採用スキーム(3) コーディングテストの内容 実行すると題意に則したアウトプットを出力するプログラムの作成 例 ・HackerRank(競技プログラミング形式) ・PRベースで提出(会計処理を自動化、データスクレイピング, ect...) 予想注目点 ・題意(要件)を正しく把握できているか ・課題対処への速さ(設計
実装 テストのサイクル速度) ・コードの綺麗さ(オブジェクト指向、デザインパターン、命名規則) ・(PRの作り方、計算量 ect...)
(Web業界の)エンジニア採用スキーム(4) あれ?? コーディングテストって めちゃくちゃ競プロer有利じゃね? ス キ ル チ ェ ッ
ク に て 競 プ ロ e r は
競技プログラミングとは?(1) 競技プログラミングでは、参加者全員に同一の課題が(テキストベースで) 出題され、より早く与えられた要求を満足するプログラムを正確に記述す ることを競う。 コンピュータサイエンスや数学の知識を必要とする問題が多く、新卒学生 の採用活動などに使われることもある (wiki引用:https://ja.wikipedia.org/wiki/競技プログラミング) 競技プログラミングってなんぞ?
競技プログラミングとは?(2) 競プロする事によるエンジニアのメリット ・要件把握の正確性 (文書の読解力) ・設計実装テスト提出までの速度アップ ・(チームコンテスト出場時)可読性を考えたコーディング ・実装コードの計算回数の把握 ・コーナーケースを意識した実装 ・テストシナリオ作成能力 (バグの発見のため) つまり競プロは、 実務やコーディングテストに求められる能力に相関性アリ!
競技プログラミングとは?(3) なるほど、よくわからん という事で 実際にやってみよう!!
実際に解いてみよう!(1) (引用:https://atcoder.jp/contests/abs/tasks/abc085_c)
実際に解いてみよう!(2) 計算回数:10^7~10^8以下までOK 10000*a + 5000*b + 1000*c = Y a
+ b + c = N
とりあえずa b cに適当な値を入 れて探索してみますか! ⬇ コード化!!
実際に解いてみよう!(3) コード化 by Python
提出!!
実際に解いてみよう!(4) 実行時間が2秒超えとる!! (計算量が多過ぎた...)
実際に解いてみよう!(5) 計算量が多かったコード by Python aとbが決まればcは計算でだせそうだから ループが一個少なくて済みそう!! c = N -
a - b N(max 2000)が3重ループ全てに関わっ てるのが悪そう? ※2秒で出来る計算量は約10^7〜10^8
リファクタ!!
実際に解いてみよう!(6) 一つループを減らせた!! 計算量改善したコード by Python
再度提出!!
実際に解いてみよう!(7)
まとめ ・転職時にスキルチェックがある場合は コーディングテストがほぼ8割 ・競プロとコーディングテストは求められる能力に 相関性がかなりある(と思う!!) ・(要件定義以降のフェーズでは)実務でも競プロは 役立ちそう ※もちろん他の要素も実務では求められる
みんなで競プロやろうぜ!! AtCoder Beginner Contest(ABC) でお待ちしてます 土日の21時から100分間やってるよ! 詳しくはこちら⬇ https://atcoder.jp/?lang=ja