- Authors
- Name
- Introduction
- Part 1: Investment Basics
- Part 2: The Language of Stocks
- Part 3: Business Frameworks
- Part 4: Economic Fundamentals
- Practical Checklist for Developers
- Series Roadmap

Introduction
"Which is better: a 50 million KRW salary or 200 RSU shares?"
Can you confidently answer this question? Developers are strong in technology but often weak in the language of money. Salary negotiations, job-switching decisions, investment choices, understanding startups -- all require financial literacy.
This article organizes 30 essential finance, economics, and business concepts from a developer's perspective.
Part 1: Investment Basics
1. Compound Interest -- "Recursion in Code"
"Compound interest is the most powerful force in the world" -- Einstein
def compound_interest(principal, rate, years):
"""Compound interest -- money that grows recursively"""
return principal * (1 + rate) ** years
# 1 million KRW/month, 7% annual return, 20 years
monthly = 1_000_000
annual_rate = 0.07
years = 20
# Simple interest: 1M x 12 x 20 = 240M KRW
simple = monthly * 12 * years
# Compound interest: ~520M KRW (more than double!)
compound = sum(
monthly * (1 + annual_rate/12) ** (years*12 - i)
for i in range(years * 12)
)
print(f"Simple: {simple:,.0f} KRW") # 240,000,000 KRW
print(f"Compound: {compound:,.0f} KRW") # ~520,000,000 KRW
2. ROI (Return on Investment) -- "Performance Benchmark"
def roi(gain, cost):
"""ROI = (Gain - Cost) / Cost x 100%"""
return (gain - cost) / cost * 100
# GPU server investment
server_cost = 5_000_000 # RTX 5090 server 5M KRW
annual_revenue = 2_000_000 # AI API service annual revenue 2M KRW
print(f"1-year ROI: {roi(annual_revenue, server_cost):.1f}%") # -60%
print(f"3-year ROI: {roi(annual_revenue * 3, server_cost):.1f}%") # 20%
3. Opportunity Cost -- "Trade-offs"
Option A: Stay at current company (60M KRW salary, stable)
Option B: Switch jobs (80M KRW salary, risky)
Opportunity cost: Choosing A means giving up the extra 20M KRW from B
Choosing B means giving up the stability of A
-> Developer analogy: Same structure as CPU vs Memory trade-offs
4. Inflation -- "Performance Degradation"
def real_value(nominal, inflation_rate, years):
"""Real value considering inflation"""
return nominal / (1 + inflation_rate) ** years
salary_2026 = 60_000_000
inflation = 0.03 # 3% annually
# Real value of 60M KRW in 10 years
real = real_value(salary_2026, inflation, 10)
print(f"Real value of 60M KRW in 2036: {real:,.0f} KRW")
# -> ~44.65M KRW (25% value loss!)
5. The Rule of 72
Time for an investment to double:
72 / Rate(%) = Years required
Example: 7% annual return -> 72 / 7 = ~10.3 years
Example: 3% annual inflation -> 72 / 3 = 24 years (money loses half its value)
Part 2: The Language of Stocks
6. PER (Price to Earnings Ratio) -- "Value for Money"
def per(stock_price, earnings_per_share):
"""Price-to-Earnings Ratio -- lower means undervalued"""
return stock_price / earnings_per_share
# Samsung Electronics
samsung_per = per(70_000, 5_000) # PER = 14
# NVIDIA
nvidia_per = per(130, 3.5) # PER = 37
# PER 14: It takes 14 years to recoup investment at current earnings
# PER 37: The market values NVIDIA's future growth highly
| Metric | Meaning | Good Range |
|---|---|---|
| PER | Price / EPS | 10-20 (varies by industry) |
| PBR | Price / Book Value | Below 1 means below asset value |
| ROE | Net Income / Equity | Above 15% is excellent |
| EPS | Earnings Per Share | Higher is better |
| Dividend Yield | Dividend / Stock Price | 3-5% is stable |
7. Market Cap -- "Project Scale"
market_cap = stock_price * total_shares
# Apple: $3.5T = "Entire K8s cluster"
# Startup: $10M = "Single Pod"
8. ETF vs Individual Stocks -- "Framework vs Building From Scratch"
ETF (e.g., S&P 500):
-> Like a framework such as Next.js -- diversified, stable, market-average returns
-> Average annual return: ~10%
Individual stocks:
-> Like building with vanilla JS -- high returns possible but high risk
-> NVIDIA 2023-2025: +800%, but individual stocks can also go -90%
9. Bonds -- "Upgraded Savings Accounts"
Government bonds: Safe, low returns (3-4%)
Corporate bonds: Medium risk, medium returns (5-8%)
High yield: High risk, high returns (10%+)
-> Developer analogy:
Government bonds = Well-tested libraries
Corporate bonds = Popular open source projects
High yield = GitHub repos with 1 star
10. Margin Call -- "OOM Kill"
Leveraged investing: Investing with borrowed money
-> 2x leverage: Gains 2x, losses 2x
-> Forced liquidation when asset value drops below a threshold
Margin Call = OOM Killer
When memory (capital) runs low, the kernel (brokerage) force-kills the process (position)
Part 3: Business Frameworks
11. Revenue vs Profit -- "Traffic vs Conversion Rate"
revenue = 100_000_000 # Revenue 100M KRW
cogs = 40_000_000 # Cost of goods sold 40M KRW
gross_profit = revenue - cogs # Gross profit 60M KRW
operating_expenses = 30_000_000 # Operating expenses 30M KRW
operating_profit = gross_profit - operating_expenses # Operating profit 30M KRW
# Operating margin = 30% -> Healthy software company
margin = operating_profit / revenue * 100
12. Cash Flow -- "Real-time Monitoring"
A company can go bankrupt with 10 billion KRW in revenue if it has no cash.
Revenue is not equal to Cash
-> Revenue recognition: At contract signing (future money)
-> Cash inflow: At actual deposit (present money)
Developer analogy: Promised API response vs actually received data
13. Break-Even Point (BEP) -- "Threshold"
def break_even_point(fixed_costs, price_per_unit, variable_cost_per_unit):
"""BEP = Fixed Costs / (Price - Variable Cost)"""
return fixed_costs / (price_per_unit - variable_cost_per_unit)
# SaaS service
fixed = 50_000_000 # Server + labor costs 50M KRW/month
price = 50_000 # Subscription 50K KRW/month
variable = 5_000 # Server cost per user 5K KRW
bep = break_even_point(fixed, price, variable)
print(f"Break-even: {bep:.0f} users") # 1,111 users
14. DCF (Discounted Cash Flow) -- "NPV Calculation"
def dcf(cash_flows, discount_rate):
"""Present value of future cash flows"""
return sum(
cf / (1 + discount_rate) ** (i + 1)
for i, cf in enumerate(cash_flows)
)
# Startup valuation
future_cash = [0, 0, 10_000_000, 50_000_000, 100_000_000] # 5 years
discount = 0.15 # 15% discount rate (reflecting risk)
value = dcf(future_cash, discount)
print(f"Company value: {value:,.0f} KRW") # ~88M KRW
15. Stock Options / RSU -- "Compensation Developers Must Know"
Stock Options:
-> The right to buy shares at a set price in the future
-> Exercise price 10,000 KRW, current price 50,000 KRW -> profit of 40,000 KRW/share
-> 4-year vesting with 1-year cliff is standard
RSU (Restricted Stock Unit):
-> Shares granted for free after a set period
-> "Stock options with exercise price of 0"
-> Mainly used by large companies (Google, Meta, etc.)
Developer decision criteria:
1. What is the likelihood of the company going public or being acquired?
2. What is the exercise price relative to the current valuation?
3. Are you willing to stay at the company for 4 years?
4. What is the expected return compared to cash compensation?
Part 4: Economic Fundamentals
16-20: Macroeconomics
| Concept | Developer Analogy | Key Point |
|---|---|---|
| GDP | Total system throughput | National economic scale |
| Interest Rate | API Rate Limit | Higher means less borrowing, more savings |
| Exchange Rate | Encoding conversion | KRW/USD, affects imports and exports |
| Trade Balance | Network I/O balance | Exports minus imports |
| Unemployment | CPU idle% | Below 5% is full employment |
21-25: Investment Strategies
| Concept | Description |
|---|---|
| Diversification | Portfolio = Microservices (don't go all-in on one thing) |
| Dollar Cost Averaging | Regular fixed-amount investing -> removes timing risk |
| Rebalancing | Periodically adjust asset ratios (Auto-scaling) |
| Emergency Fund | Keep 6 months of living expenses in cash (disaster recovery buffer) |
| Tax Optimization | Leverage ISA, pension savings, and retirement pension plans |
26-30: Startups / Business
| Concept | Description |
|---|---|
| PMF (Product-Market Fit) | Alignment between what users actually want and the product |
| MRR/ARR | Monthly/Annual Recurring Revenue -- core SaaS metric |
| CAC/LTV | Customer Acquisition Cost vs Lifetime Value -- healthy when LTV/CAC is 3x or more |
| Runway | Months remaining until cash runs out |
| Valuation | Company value assessment (revenue multiples, DCF, comparables) |
Practical Checklist for Developers
[ ] Secure 6 months of emergency funds
[ ] Get tax deductions through pension savings/IRP (up to ~1.15M KRW/year)
[ ] Auto-invest 20%+ of salary (ETF contributions)
[ ] Research the market before salary negotiations
[ ] Carefully review stock option/RSU terms
[ ] Compare mid-career severance settlement vs end-of-employment payout
[ ] Calculate health insurance and national pension contributions
Series Roadmap
| Part | Topic | Status |
|---|---|---|
| 1 | 30 Essential Finance, Economics & Business Concepts (this article) | Done |
| 2 | Stock Investing Practical Guide for Developers | Coming Soon |
| 3 | The Art of Salary Negotiation -- Armed with Data | Coming Soon |
| 4 | Startup vs Big Company -- Complete Compensation Analysis | Coming Soon |
| 5 | Building a Personal Asset Management System with Python | Coming Soon |
Quiz -- Financial Literacy (Click to check!)
Q1. Approximately how many years does it take for principal to double at a 7% annual return? ||72 / 7 = approximately 10.3 years (Rule of 72)||
Q2. What does a PER of 20 mean? ||At current earnings levels, it takes 20 years to recoup the investment. It means the market expects a certain degree of future growth.||
Q3. How much should a 60M KRW salary be in 10 years to maintain the same value at 3% inflation? ||60M x (1.03)^10 = approximately 80.63M KRW||
Q4. What problem arises when the LTV/CAC ratio is below 3? ||When the revenue from a single customer (LTV) is less than 3x the acquisition cost (CAC), the business is unsustainable -- either marketing efficiency is low or churn rate is high.||
Q5. What is a "1-year cliff" for stock options? ||A condition where vesting only begins after 1 year of employment. Leaving before 1 year means 0 stock options.||
Q6. What happens to company value when the discount rate in DCF increases? ||It decreases -- a higher discount rate means higher risk, so the present value of future cash flows decreases.||
Q7. Name 3 advantages of ETFs. ||1) Diversification (reduces individual stock risk) 2) Low fees 3) Achieves market-average returns without requiring expertise||
Q8. What does it mean for a startup to have a 6-month runway? ||Based on current cash reserves and monthly burn rate, the company will run out of funds in 6 months -- additional funding or monetization is needed.||