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
インターン生・新卒向け、学校でもっと教えてほしいITエンジニア基本スキル
Search
NearMeの技術発表資料です
PRO
June 10, 2022
Programming
380
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
インターン生・新卒向け、学校でもっと教えてほしいITエンジニア基本スキル
NearMeの技術発表資料です
PRO
June 10, 2022
More Decks by NearMeの技術発表資料です
See All by NearMeの技術発表資料です
Claude Code × git worktree で並列開発 (続き) -差分のサービスだけを併設する-
nearme_tech
PRO
1
50
Claude Code × git worktree で並列開発 — サブモジュール構成のリポジトリで成立させる —
nearme_tech
PRO
0
55
LLM + 強化学習
nearme_tech
PRO
0
31
PosthogのA/Bテスト機能の紹介
nearme_tech
PRO
1
45
AIフレンドリーなプロダクトに向けて
nearme_tech
PRO
2
65
初めてのLean言語
nearme_tech
PRO
0
100
Apache Airflow Workflow orchestration without turning cron into spaghetti
nearme_tech
PRO
2
37
実務で役立つ幾何学 ボロノイ図の基礎から グラフ・ネットワーク応用まで
nearme_tech
PRO
1
76
SQL/ID抽出タスクから考える 実践的なハルシネーション対策
nearme_tech
PRO
1
88
Other Decks in Programming
See All in Programming
FastAPI の並行処理モデルを完全に理解する
hoto17296
9
3.8k
Hono + Inertia + React で LP を構築した話
oukayuka
2
220
Webの地図
yosuke_furukawa
PRO
1
230
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
130
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
290
一参加者から『中の人』へ 〜全通PHPerがブースに立って学んだ、カンファレンスを100倍楽しむコツ〜
wp_daisuke
0
120
typoなんかねぇよ
raspython3
0
670
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
0
250
業務時間外もAIに働いてもらう話
colorful12
3
10k
個人開発基盤をまるごとCloudflareに引っ越して爆速で総合的体験を向上させた話
tinykitten
0
120
MIZARU@SPAJAM2026 第二回予選
1901drama
0
110
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
230
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
A Soul's Torment
seathinner
7
3.6k
Docker and Python
trallard
47
4.2k
Practical Orchestrator
shlominoach
191
12k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
440
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.1k
It's Worth the Effort
3n
188
29k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
Optimizing for Happiness
mojombo
378
71k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Transcript
0 インターン生・新卒向け 学校でもっと教えてほしい ITエンジニア基本スキル 2022-06-10 第1回NearMe技術勉強会 Kenji Hosoda
1 ユニットテスト • ユニットテストとは ◦ プログラムコードでは、一箇所変更したら、思わぬ箇所でエラーになったりする。これを毎回手作業 でテストするのはコードが大きくなる程難しくなる。そこで、プログラムの挙動を細かな単位で自動で テストできるようにして動作を保証するのがユニットテストである。 • 綺麗に書かないとテストを書くのが難しい
◦ “因数分解”(リファクタリング)されたコードの部品部分をテストする方が、それらが混じったものをテス トするよりも簡潔にわかりやすく書ける。 ◦ 逆にテストを書こうとすることにより、コードが綺麗になるという副作用もある。 • Print文よりテスト駆動開発 ◦ Print文書きながらコード書いてますか?そのPrint文を書く代わりにテストを書くようになれば”いけて る”技術者です。 ◦ テストを先に書いてテストに導かれながら本体コードを書くことをテスト駆動開発と言う。
2 データベース • データベースはサービスの根幹 ◦ サービスを作るとき、まずはデータベースの構造を考える。 ◦ データベースが大元にあって、バックエンドのAPI、フロントエンドのUIが付随する。 • インデックス
◦ データ量が増えていくと、単純にレコードを選択すると全データ走査するため遅くなる。 ◦ そこであらかじめインデックス(索引)を用意しておいて、素早くレコードを引き当てる。 ◦ 複合インデックスなど複雑なインデックスの方法も覚えよう。 ◦ インデックスの張りすぎに注意。レコード挿入・更新が遅くなるので。 • トランザクション ◦ 複数のレコードを一度に処理したいとき、途中で障害が起きると、中途半端な状態になる。 ◦ このとき一連の処理をトランザクションにまとめることで、元の状態に戻せる。 • その他 ◦ ジョイン、外部キー制約、ロック、N+1問題なども把握しておこう。
3 その他 • インターネット ◦ IPアドレス、ポート番号、ドメイン、HTTP、SSL/TLS、など。 ◦ クラウド上でサーバーを建ててインターネットに公開してみるといい。 ▪ インターネットに公開してログを眺めたら、世界中から攻撃されてるのがわかる。
• ターミナル操作 ◦ GUIが使えない環境で操作することが求められる。 ◦ シェルスクリプト、viのエディタ操作などは、とっつきにくいけど覚えておいた方がいい。 • 正規表現 ◦ プログラムの文字列処理で重宝。 ◦ エディタで検索する時も利用。 • 情報収集 ◦ はてなブックマーク、Twitterでプログラマーをフォロー、Feedlyで技術ブログを購読。 ◦ 海外の情報も積極的に取り入れる。英語の苦手意識をなくす。
4 Thank you