Every Role I've Played — Junior to CTO, What I Actually Did at Each Level

No production experience. GitHub full of tutorial repos. One asset: the ability to learn fast and zero fear of breaking things. This is what I actually built as a junior engineer — WordPress sites, a PHP university system, and the hardcoded credentials mistake that taught me security forever.

"Everybody starts somewhere. I started with FTP and hardcoded passwords." — Me
The junior years are about one thing: proving you can learn. Nobody expects production experience. Nobody expects architectural wisdom. They're betting on your trajectory — and that trajectory is determined by how fast you absorb fundamentals and how honestly you handle mistakes.
Year: 2017-2018 Stack: PHP, MySQL, HTML/CSS, Bootstrap, WordPress Deployment method: FTP to shared hosting (I had no idea what CI/CD was) Version control: Started Git at month 8. Lost 3 projects before that.
What I was selling: Fundamental skills + willingness to learn. What companies were buying: Someone who won't be a net negative to the team. My edge: I could figure things out without asking the same question twice.
A CRUD application for managing student data, course registrations, and grades at a local campus.
What I learned:
students table had 40 columns including "father_occupation" and "mother_maiden_name" with no separationThe mistake that changed everything:
// This was in my config.php — pushed to GitHub
$db_host = "localhost";
$db_user = "root";
$db_password = "admin123";
$db_name = "university_db";Someone found my public repo. They didn't do anything malicious — they sent me an email saying "Hey, you might want to fix this." That stranger's kindness taught me more about security than any tutorial ever could.
I built 5-6 WordPress + WooCommerce sites for local businesses — a bakery, a printing shop, a small clothing brand, a travel agent, and a restaurant.
What I actually did:
What I learned:
| Portfolio Item | Did I Do It? | Notes |
|---|---|---|
| 3-5 projects | ✅ | 1 university system + 5 business sites |
| Active GitHub | ❌ | Started Git at month 8 — major regret |
| 1 live deployed project | ✅ | Multiple WordPress sites live |
| Code readability | ⚠️ | Functional but not clean. God classes everywhere. |
| README documentation | ❌ | Didn't write a single README. Future me suffered. |
| Commit message quality | ❌ | "update", "fix", "final", "final2", "final_final" |
Day one. git init before npm init. The 3 projects I lost to hosting
failures would still exist.
your code at a real URL is worth 100 localhost projects. Use Vercel, Netlify, GitHub Pages — anything free. Just get it live.
audience. Six months later, you won't remember why you structured the database
that way or what processData_v2() actually does.
to Python to Java in 18 months. Surface-level knowledge of 4 languages is worth less than deep knowledge of 1.
The junior years are the only time in your career when "I don't know" is not just accepted — it's expected. Use that window. Ask everything. Break things. Learn publicly. Your senior self is counting on it.



