Developer Job Hunting Guide | Resume· Portfolio
이 글의 핵심
Getting a developer job is a skill separate from writing code. This guide covers the entire process — resume that passes ATS, portfolio projects that get callbacks, technical interview preparation, and negotiating your offer.
The Developer Job Process
1. Resume & LinkedIn → get past the first filter (ATS + recruiter)
2. Portfolio → show you can build real things
3. Recruiter screen → 30min, background and culture fit
4. Technical interview → coding, system design, or take-home
5. Final/team interview → behavioral, values, team fit
6. Offer & negotiation → don't leave money on the table
Resume
What Actually Matters
ATS systems scan for keywords — use the job description's words
Human reviewers spend 6-10 seconds — make it scannable
Format:
1 page (0-5 years experience)
Single column
Standard section headers (ATS-safe)
No tables, graphics, or images
PDF format
Resume Structure
[Name] [City, State | Remote]
[Email] | [LinkedIn] | [GitHub] | [Portfolio URL]
SUMMARY (optional, 2-3 lines)
Full-stack developer with 2 years experience building React/Node.js
applications. Contributed to open source (1,200+ GitHub stars).
SKILLS
Languages: TypeScript, Python, SQL
Frontend: React, Next.js, Tailwind CSS
Backend: Node.js, FastAPI, PostgreSQL, Redis
Tools: Docker, GitHub Actions, AWS (EC2, S3, RDS)
EXPERIENCE
[Company Name] — [Title] [Month Year – Present]
• [Achievement with number, not task description]
• Reduced API response time by 60% by adding Redis caching layer
• Migrated 3 legacy services to TypeScript, reducing runtime errors by 40%
• Led development of user authentication system handling 10K+ daily logins
PROJECTS
[Project Name] | GitHub: github.com/you/project | Live: project.com
• What it is and what problem it solves (1 line)
• Tech stack: React, Node.js, PostgreSQL, Docker
• Notable achievement: 500+ users, featured in HackerNews, etc.
EDUCATION
[Degree] | [Institution] | [Year]
Relevant coursework: Data Structures, Algorithms (if relevant)
Writing Strong Bullets
❌ Weak (task):
"Worked on the frontend using React"
"Fixed bugs in the API"
"Helped with database design"
✅ Strong (achievement + impact):
"Rebuilt checkout flow in React, reducing cart abandonment by 23%"
"Identified and fixed N+1 query causing 2-second API timeout; reduced to 50ms"
"Designed PostgreSQL schema for inventory system handling 50K+ products"
Formula: [Action verb] [what you did] [measurable result]
Portfolio
What to Build
Tier 1 (most impactful — shows real engineering):
- A SaaS product with actual users (even 10 is impressive)
- Open source contribution to a known project
- Tool that solves your own problem and has GitHub stars
Tier 2 (solid, shows full-stack skills):
- Full-stack CRUD app with auth, DB, deployment
- REST or GraphQL API with documentation
- Chrome extension with users
Tier 3 (still useful as learning projects):
- Tutorial projects (don't make the hero project)
- Clones (clone Trello, Twitter, etc. — shows you can read real requirements)
What NOT to build:
- Todo apps (everyone has one)
- Another weather app
- Portfolio of portfolio apps
Making Projects Stand Out
README structure for a portfolio project:
# Project Name — One-sentence description
## Live Demo
[Link to live app] | [Video demo (2-min Loom)]
## What It Does
3 sentences: what problem it solves, who uses it, what makes it interesting.
## Tech Stack
- Frontend: React 18, TypeScript, Tailwind CSS
- Backend: Node.js, Express, PostgreSQL
- Infrastructure: Docker, deployed on Railway
## Key Technical Decisions
- Chose PostgreSQL over MongoDB because the data is highly relational
- Implemented optimistic updates for instant UI feedback
- Added Redis caching, reducing DB load by 70%
## Local Setup
```bash
git clone ...
docker compose up -d
npm install && npm run dev
---
## Technical Interview Preparation
### Coding Interviews (LeetCode-style)
Study plan (3 months, 1-2 hours/day):
Month 1: Foundations Arrays, strings, hash maps, two pointers, sliding window Target: Easy problems in 15-20 min
Month 2: Core patterns Binary search, recursion, DFS/BFS, stack/queue Target: Medium problems in 25-35 min
Month 3: Hard problems + review Dynamic programming, graphs, trees Practice under timed conditions
Resources: NeetCode.io — structured curriculum + video explanations Blind 75 list — 75 essential problems LeetCode — practice platform
```python
# During the interview:
# 1. Clarify constraints before coding
# "Can the input be empty? What are the value ranges?"
# 2. State your approach before coding
# "I'll use a hash map to track frequencies — O(n) time, O(n) space"
# 3. Write clean, readable code (not clever)
# 4. Test with examples (including edge cases)
# 5. Discuss time/space complexity
def two_sum(nums: list[int], target: int) -> list[int]:
seen = {} # value → index
for i, num in enumerate(nums):
complement = target - num
if complement in seen:
return [seen[complement], i]
seen[num] = i
return []
System Design Interviews
Framework (45-minute interview):
1. Clarify requirements (5 min)
"How many daily active users?"
"Read-heavy or write-heavy?"
"Consistency vs availability tradeoff preference?"
2. Capacity estimation (5 min)
"10M DAU, 100 requests/user/day = 1B requests/day"
"~12,000 requests/second (10% write, 90% read)"
3. High-level design (15 min)
Draw: clients → CDN → load balancer → app servers → DB + cache
4. Deep dive (15 min)
Database schema, API endpoints, caching strategy, scaling
5. Handle bottlenecks (5 min)
"DB is bottleneck → read replicas → then shard"
Common systems to practice:
URL shortener, Twitter feed, YouTube, Uber, WhatsApp, Google Drive
Behavioral Interviews (STAR Format)
STAR: Situation, Task, Action, Result
Prepare 6-8 stories that cover:
- Leadership / taking initiative
- Technical challenge overcome
- Conflict with a teammate
- Failure and what you learned
- Handling ambiguity
- Collaboration and mentoring
Example:
Q: "Tell me about a time you faced a difficult technical problem."
S: "Our e-commerce checkout was failing for ~5% of users at peak times."
T: "I was tasked with finding and fixing the root cause within 2 days."
A: "I added logging to identify the pattern — all failures were during
DB writes. Traced to connection pool exhaustion. Implemented PgBouncer
for connection pooling and increased pool size."
R: "Failure rate dropped from 5% to <0.01%. Also documented the incident
and set up alerts for connection pool metrics."
Job Search Strategy
Where to Apply
Tier 1 (higher interview → offer rate):
Employee referrals — ask everyone you know
LinkedIn connections at target companies
Recruiter outreach responses
Tier 2 (solid volume):
Company career pages (bypass ATS at smaller companies)
LinkedIn Jobs
Indeed
Tier 3 (high volume, lower conversion):
AngelList / Wellfound (startups)
Glassdoor
Built In (tech hubs)
Specialties:
Remote: Remote.com, We Work Remotely, Remote OK
Startups: YC Job Board, AngelList
Freelance: Toptal, Upwork, Gun.io
Application Process
Research before applying:
- Read recent company blog / engineering blog
- Check Glassdoor reviews (interview process, culture)
- Find the tech stack (LinkedIn jobs, StackShare, their GitHub)
Customize for each application:
- Match your skills to their requirements
- Reference their specific tech stack
- Mention something specific about the company/product
Cover letter (when required):
3 paragraphs:
1. Why this company / product (specific, not generic)
2. Your most relevant experience for THIS role
3. What you'll contribute + call to action
Salary Negotiation
Do your research first:
Levels.fyi — public comp data by company/level
Glassdoor — salary ranges
LinkedIn Salary
Blind — anonymous discussion (grain of salt)
Asking peers in the field
The conversation:
Recruiter: "What are your salary expectations?"
You: "I'm flexible, but based on my research for this role and
my experience, I'm targeting around $X. Is that in range?"
(Never be the first to accept — always counter)
Offer received: "Thank you, I'm very excited about this opportunity.
I'd like a week to review the full package. Would that be possible?"
Counter offer: "I'm very interested in joining the team. Based on my
research and the scope of this role, I was hoping we could get to $Y
[10-15% above offer]. Is there flexibility there?"
If they say no: negotiate other things:
- Signing bonus
- Extra PTO
- Remote work flexibility
- Earlier performance review
- Professional development budget
Networking
Effective networking (not asking for jobs):
1. Twitter/X — follow engineers at target companies, engage genuinely
2. LinkedIn — comment on posts, not just connect
3. Discord/Slack communities — contribute answers, ask good questions
4. Local meetups / conferences — in-person connection is memorable
5. Open source — contribute to projects the company maintains
When reaching out:
"I saw your talk on [topic] at [conference] — your point about [X]
resonated with my experience at [Y]. I'm working on [similar thing]
and would love to chat for 20 minutes if you have time."
Not: "Hey, can you refer me to your company?"
Genuine connection first → job conversation naturally follows
Post-Interview Checklist
After each interview:
[ ] Send thank-you email within 24 hours
"Thank you for the time today. I really enjoyed discussing [X].
It clarified my excitement about [specific thing about role/company]."
[ ] Note what questions were asked (for your prep notes)
[ ] Note anything you struggled with (address in your prep)
[ ] Follow up if no response after 1 week
"I wanted to follow up on my interview from [date].
I remain very interested in the role and would love to hear
if there are any updates."
More career guides (Korean on pkglog.com)
This site also publishes Korean deep-dives that pair well with this English overview: job posting channels & application tracking, resume, screening, and interview delivery, habits & weekly review, and senior / return-to-work positioning. Use them if you read Korean or run pages through translation.
Related posts:
Frequently Asked Questions (FAQ)
Q. When would I use this in practice?
A. Land a software engineering job in 2026. Covers resume writing for ATS and human reviewers, building a portfolio that st…
Q. What should I read before this?
A. Follow the previous article or related articles links at the bottom of each post to learn in sequence.
Q. Where can I study this more deeply?
A. Check cppreference and the relevant library’s official documentation. The reference links at the end of the article are also worth using.
Related Articles (Internal Links)
Other articles related to this topic.
Keywords Covered in This Article (Related Search Terms)
This article covers Career, Job Hunting, Interview, Resume, Portfolio, Software Engineering.