20250322_Monkey Conference Party 2025_プログラミングコンテストのススメ

783 Views

March 22, 25

スライド概要

profile-image

株式会社Finatext サーバーサイドエンジニア AWS/Go/Terraform

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

遊びながら伸びる!プログラミングコンテストのススメ 〜勉強も仕事も楽しむエンジニアになろう〜 2025/03/22 Monkey Conference Party2025 株式会社Finatext 松崎稔矢 @tm8619_pro © 2024 Finatext Holdings Ltd.

2.

自己紹介 松崎稔矢 Toshiya Matsuzaki 株式会社Finatext 職種: バックエンドエンジニア チームリーダー 趣味: ボウリング など /ゲーム /ダーツ /ポーカー /乗馬 /お酒 /ゴルフ 技術: Go/AWS/Terraform 競プロ AtCoder青 Codeforces紫 ISUCON 3回出場(大体上位10%程度) © 2024 Finatext Holdings Ltd. 1

3.

はじめに 皆さん ゲームは好きですか? © 2024 Finatext Holdings Ltd. 2

4.

はじめに ゲームしながら エンジニアとしても 強くなる方法があります © 2024 Finatext Holdings Ltd. 3

5.

はじめに プログラミングコンテスト © 2024 Finatext Holdings Ltd. 4

6.

伸びるエンジニアって? 伸びるエンジニアの特徴 © 2024 Finatext Holdings Ltd. 5

7.

伸びるエンジニアって? 伸びるエンジニアの特徴 エンジニアリングを楽しんでいる人 © 2024 Finatext Holdings Ltd. 6

8.

伸びるエンジニアって? 伸びるエンジニアの特徴 エンジニアリングを楽しんでいる人 こういった人に、義務感でやっている人は勝てない ●勉強を勉強だと思っていない ●仕事を楽しんでいる © 2024 Finatext Holdings Ltd. 7

9.

プロコン紹介 プログラミングコンテストはエンジニアのゲーム 「遊び」が「実務に活きるスキル」になる ●問題を解く ●アプリを最適化する ●脆弱性を見つける ●戦略を練る © 2024 Finatext Holdings Ltd. 8

10.

プロコン紹介 今日は4つのコンテストについて紹介します! ●どういうものか ●どうエンジニア力・仕事に活きるのか © 2024 Finatext Holdings Ltd. 9

11.

プロコン紹介 4つのコンテスト概要 コンテスト 特徴 競プロ アルゴリズムで問題解決!論理的なパズルを解く ISUCON Webアプリを高速化!エンジニアの総合格闘技 CTF システムを攻撃!あらゆる手を使ってチートする Kaggle データを分析!答えを予測してスコアアタック © 2024 Finatext Holdings Ltd. 10

12.

競プロ紹介 競技プログラミングの魅力と効果 ● 問題例 https://atcoder.jp/contests/typical90/tasks/typical90_cg © 2024 Finatext Holdings Ltd. 11

13.

競プロ紹介 競技プログラミングの魅力と効果 ● 新しい言語を手を動かして覚えられる ○ 小さな問題で基本構文から応用まで習得できる ○ 自分はプログラミング自体を競プロで始めた © 2024 Finatext Holdings Ltd. 12

14.

競プロ紹介 競技プログラミングの魅力と効果 ● 新しい言語を手を動かして覚えられる ○ 小さな問題で基本構文から応用まで習得できる ○ 自分はプログラミング自体を競プロで始めた ● 「計算量の意識」が身につく ○ データ量に合わせた実装の選択 ○ 「愚直な実装」vs「最適化」のバランス感覚 © 2024 Finatext Holdings Ltd. 13

15.

競プロ紹介 競技プログラミングの魅力と効果 ● 新しい言語を手を動かして覚えられる ○ 小さな問題で基本構文から応用まで習得できる ○ 自分はプログラミング自体を競プロで始めた ● 「計算量の意識」が身につく ○ データ量に合わせた実装の選択 ○ 「愚直な実装」vs「最適化」のバランス感覚 ● 問題を分割して組み立てる能力が鍛えられる ○ 大きな課題を小さく分解する思考法 ○ 実務の実装アプローチにそのまま活きる © 2024 Finatext Holdings Ltd. 14

16.

ISUCON紹介 ISUCON(Iikanjini Speed Up CONtest)の魅力と効果 ● 問題例 ○ リリース8時間前だけどめっちゃ遅いプロダクトがある ○ リリースまでにまともに動かそう! © 2024 Finatext Holdings Ltd. 15

17.

ISUCON紹介 ISUCON(Iikanjini Speed Up CONtest)の魅力と効果 ● 問題例 ○ リリース8時間前だけどめっちゃ遅いプロダクトがある ○ リリースまでにまともに動かそう! ● 実務に非常に近い経験が得られる ○ 「限られた時間内」に「既存プロダクトの価値を最大化」 ○ チームでの役割分担と優先順位付けが重要 © 2024 Finatext Holdings Ltd. 16

18.

ISUCON紹介 ISUCON(Iikanjini Speed Up CONtest)の魅力と効果 ● 問題例 ○ リリース8時間前だけどめっちゃ遅いプロダクトがある ○ リリースまでにまともに動かそう! ● 実務に非常に近い経験が得られる ○ 「限られた時間内」に「既存プロダクトの価値を最大化」 ○ チームでの役割分担と優先順位付けが重要 ● AWS等のクラウドインフラも学べる ○ 過去問環境を自分でAWSに構築できる ○ インフラ触りたい人にもおすすめ © 2024 Finatext Holdings Ltd. 17

19.

CTF紹介 CTF(Capture The Flag)の魅力と効果 ● 問題例 https://qiita.com/fiotto/items/df6e62b9a25fd62c62fd © 2024 Finatext Holdings Ltd. 18

20.

CTF紹介 CTF(Capture The Flag)の魅力と効果 ● 「攻撃者の視点」を持てるようになる ○ この入力フォーム、SQLインジェクションで攻撃出来ないかな? ○ 具体的なリスクを想像できる力 © 2024 Finatext Holdings Ltd. 19

21.

CTF紹介 CTF(Capture The Flag)の魅力と効果 ● 「攻撃者の視点」を持てるようになる ○ この入力フォーム、SQLインジェクションで攻撃出来ないかな? ○ 具体的なリスクを想像できる力 ● ちょっと触るだけでも意識が大きく変わる ○ アプリ開発時のセキュリティへの意識向上 ○ 一度攻撃を体験すると、守り方への理解が深まる © 2024 Finatext Holdings Ltd. 20

22.

CTF紹介 CTF(Capture The Flag)の魅力と効果 ● 「攻撃者の視点」を持てるようになる ○ この入力フォーム、SQLインジェクションで攻撃出来ないかな? ○ 具体的なリスクを想像できる力 ● ちょっと触るだけでも意識が大きく変わる ○ アプリ開発時のセキュリティへの意識向上 ○ 一度攻撃を体験すると、守り方への理解が深まる ● 体験から効果的に学べる ○ 知識も大事だが実践の方が身になる ○ セキュリティ対策しなかった時に何が起こるのかを体験する © 2024 Finatext Holdings Ltd. 21

23.

Kaggle紹介 Kaggleの魅力と効果 ● 問題例 ○ タイタニック号の沈没で、こういう属性の人は助かったか予測してください © 2024 Finatext Holdings Ltd. 22

24.

Kaggle紹介 Kaggleの魅力と効果 ● 問題例 ○ タイタニック号の沈没で、こういう属性の人は助かったか予測してください ● 理論と実践の両方が学べる ○ 基礎勉強だけでなく実データでの体験が理解を深める © 2024 Finatext Holdings Ltd. 23

25.

Kaggle紹介 Kaggleの魅力と効果 ● 問題例 ○ タイタニック号の沈没で、こういう属性の人は助かったか予測してください ● 理論と実践の両方が学べる ○ 基礎勉強だけでなく実データでの体験が理解を深める ● 知見共有の文化がある ○ Notebookやディスカッションが公開されている ○ 他者のアプローチから学びながら改良できる © 2024 Finatext Holdings Ltd. 24

26.

Kaggle紹介 Kaggleの魅力と効果 ● 問題例 ○ タイタニック号の沈没で、こういう属性の人は助かったか予測してください ● 理論と実践の両方が学べる ○ 基礎勉強だけでなく実データでの体験が理解を深める ● 知見共有の文化がある ○ Notebookやディスカッションが公開されている ○ 他者のアプローチから学びながら改良できる ● トライ&エラーを繰り返しやすい環境 ○ コード変更→学習→評価のサイクルが素早い ○ 様々な手法を試して理解が深まる © 2024 Finatext Holdings Ltd. 25

27.

まとめ 始め方ガイド コンテスト 始め方 競プロ AtCoder ISUCON 最新過去問 おすすめポイント ただ足し算するレベルの簡単な問題から揃っている https://atcoder.jp/contests/abs 最近だとアルゴ式も良い AWSで環境構築して実際に動かして自由に作業可能 最新の方が技術スタックがモダンでおすすめ CTF CpawCTF チュートリアル的な問題が揃っている https://ctf.cpaw.site/ 終わったらPicoCTFが問題数多くておすすめ Kaggle タイタニック チュートリアル問題 進め方、考え方のドキュメントが豊富にある © 2024 Finatext Holdings Ltd. 26

28.

まとめ 楽しむエンジニアが伸びる 楽しく学べるコンテンツがある 同様に仕事にもゲーム性を見出す つよいエンジニアになれる! © 2024 Finatext Holdings Ltd. 27

29.

まとめ 楽しむエンジニアが伸びる エンジニアリングを楽しもう © 2024 Finatext Holdings Ltd. 28