Faisalaffan Blog
Faisalaffan Blog
Career10 min read

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

A candid career retrospective tracing my journey through every engineering role: Junior developer grinding through fundamentals, Mid-level shipping production features, Senior designing architectures, Staff building org-wide leverage, and CTO-level strategic decisions. Each section maps to the portfolio strategy framework with real projects, real metrics, and real lessons.

Faisal Affan
Faisal Affan
Published
Every Role I've Played โ€” Junior to CTO, What I Actually Did at Each Level

Every Role I've Played โ€” Junior to CTO

"You don't become a senior engineer by writing more code. You become one by making decisions that outlive you." โ€” Me, after breaking production for the 47th time

This isn't theory. This is what I actually did at each career stage โ€” the projects, the mistakes, the wins, and what I'd do differently knowing what I know now.


Stage 1: Junior โ€” The Fundamentals (Year 1-2)

What I Was Selling

Fundamental skills + willingness to learn. I had zero production experience. My GitHub was tutorial repos. My only asset was I could learn fast and wasn't afraid to break things.

What I Actually Did

Project: University Information System

  • Built a CRUD app for managing student data at a local campus
  • Stack: PHP, MySQL, Bootstrap (yes, Bootstrap โ€” it was 2017)
  • Deployed to shared hosting via FTP (I didn't know what CI/CD was)
  • Mistake I made: Hardcoded database credentials. Someone found them. Lesson learned permanently.

Project: Small Business Website

  • Built 5-6 WordPress/WooCommerce sites for local businesses
  • Learned: DNS, hosting, domain management, basic SEO
  • Mistake I made: Didn't use version control for the first 3 projects. Lost an entire site when the hosting expired.

What I'd Do Differently

  • Start using Git from day one
  • Deploy a personal project to a real URL immediately โ€” the confidence boost is worth the effort
  • Write README files even for solo projects โ€” your future self will thank you

Junior Portfolio Checklist

Item Did I Do It?
3-5 projects โœ… 5 small business sites + 1 university system
Active GitHub โŒ Started Git late (month 8) โ€” regret this
1 live deployed project โœ… Multiple WordPress sites on shared hosting
Code readability โš ๏ธ Looking back, it was functional but not clean

Stage 2: Mid-Level โ€” Execution & Ownership (Year 2-4)

What I Was Selling

Execution reliability. I had shipped real features to real users. I had broken production and fixed it alone at 2 AM. I could take a feature spec and deliver it end-to-end without hand-holding.

What I Actually Did

SiTepat โ€” Mobile Banking Integration (SEVIMA)

  • Integrated Flutter mobile app with bank core system via ISO 8583
  • Built real-time financing dashboard for field agents
  • Impact: 680K+ Google Play downloads, zero downtime during Eid transaction rush
  • Lesson: Banking protocols are not "just another API." ISO 8583 has quirks that will destroy your sleep schedule if you don't read the spec cover to cover.

HPU Digital Mining Platform

  • Built fleet management system for mining trucks across 3 provinces
  • Implemented fuel anomaly detection that caught theft in month one
  • Impact: Truck utilization 65% โ†’ 79%, Rp 3.2B annual savings
  • Lesson: IoT is 20% software, 80% dealing with hardware that doesn't behave. GPS trackers lie. Connectivity in remote sites is a privilege, not a guarantee.

Tepati โ€” Field Operations Platform

  • Built solo in 30 days โ€” Go backend, Flutter mobile, offline-first sync
  • Eliminated 23% data loss from the previous paper-based system
  • Impact: 4.1M end-users served
  • Lesson: Building solo forces you to own everything. There's no "backend team" to blame when the database is slow at 3 AM.

Mid-Level Portfolio Checklist

Item Did I Do It?
2-3 work case studies โœ… SiTepat, HPU, Tepati
Measurable impact โœ… 680K downloads, 65%โ†’79% utilization, 23% data loss eliminated
Open source contribution โŒ Started too late โ€” should have begun at this stage
Technical articles โš ๏ธ Wrote internal docs but never published publicly

Stage 3: Senior โ€” Depth, Architecture & Trade-Offs (Year 4-6)

What I Was Selling

Architecture depth + technical judgment. I stopped being evaluated on lines of code. I was evaluated on decisions โ€” what architecture to use, what trade-offs to accept, and how to guide other developers.

What I Actually Did

Petrosea Minerva โ€” IoT Fleet Telemetry

  • Designed real-time geofencing engine processing 50K events/second
  • Architecture: Go โ†’ MQTT โ†’ Kafka โ†’ Time-Series DB โ†’ React dashboards
  • Trade-off decision: Chose MQTT over HTTP for edge-to-cloud because remote mines had intermittent connectivity. HTTP retries were killing our data pipeline.
  • Impact: Sub-2-second geofence alerts, $200K annual savings
  • Full case study โ†’

IAG Cybera360 โ€” Insurance Platform Architecture

  • Designed microservices platform integrating 5+ third-party partners
  • Trade-off decision: Chose Nuxt.js SSR over React SPA for SEO-critical insurance quoting flows. Australian insurance brokers search for "cyber insurance quote" โ€” we needed Google to see our content.
  • Impact: Digitized entire cyber insurance lifecycle for Australia's largest insurer
  • Full case study โ†’

Why Golang โ€” Stack Decision

  • Evaluated Go vs Node.js vs Python vs Rust for my primary stack
  • Trade-off decision: Go won on simplicity, compilation speed, and deployment ergonomics โ€” not raw performance
  • Published the analysis publicly โ€” became my most-read article
  • Full article โ†’

Architecture Diagrams I Designed

IoT Telemetry Architecture (Petrosea Minerva)

Problem: 100+ mining trucks across remote sites generating GPS/engine data every 2 seconds. Intermittent satellite connectivity. Data must reach HQ dashboard within 5 seconds for real-time alerts.

Decision: Edge gateway with local buffer โ†’ MQTT publish (QoS 1) โ†’ Kafka stream processing โ†’ Time-series DB (TimescaleDB) โ†’ WebSocket push to React dashboards.

Trade-offs considered:

  • HTTP polling (rejected: too much overhead for 50K events/sec)
  • gRPC streaming (rejected: satellite links break gRPC connections frequently)
  • MQTT chosen for: lightweight, QoS levels, persistent sessions for reconnection

What I'd change now: Add a dead-letter queue for undelivered messages. We lost ~0.5% of telemetry data in the first month before patching.

Offline-First Sync Engine (Tepati)

Problem: Field agents working in areas with zero internet connectivity. They fill forms, capture photos, collect signatures โ€” all must sync when connectivity returns, without data loss or conflicts.

Decision: SQLite local DB โ†’ change log table โ†’ MQTT push when online โ†’ server-side conflict resolution (last-write-wins with timestamp + device ID).

Trade-offs:

  • CRDT chosen for: eventual consistency with automatic conflict resolution
  • Rejected operational transform: too complex for our use case, no collaborative editing needed

Senior Portfolio Checklist

Item Did I Do It?
System architecture diagrams โœ… Documented in case studies
Trade-off decisions with rationale โœ… Golang choice, MQTT vs HTTP, Nuxt vs React
Mentorship impact โš ๏ธ Informal mentoring only โ€” no structured program
Speaking/writing โœ… Published 20+ technical articles, internal tech talks

Stage 4: Staff-Level โ€” Leverage Beyond Individual Contribution (Year 6-7)

What I Was Selling

Org-wide impact through tooling, standards, and cross-team influence. At SEVIMA, I didn't just build software โ€” I established patterns that outlasted my tenure.

What I Actually Did

SEVIMA โ€” Multi-Tenant LMS Architecture Strategy

  • Designed approach for single codebase serving 100+ university clients
  • Leverage: Instead of building 100 separate LMS instances, created a white-label framework where each campus gets custom branding + configuration from one deployable artifact
  • Org-wide impact: Reduced per-client onboarding from 2 weeks to 2 days
  • Full case study โ†’

Dynamic Form Engine

  • Built a form engine supporting 50+ field types with conditional logic
  • Leverage: Other teams could create complex data collection forms without writing code โ€” drag-and-drop configuration instead of developer tickets
  • Adoption: Used by 3 product teams across the organization

ISO 8583 Bridge Protocol

  • Built the core banking integration layer that became the standard for all future bank integrations
  • Leverage: Subsequent banking partners were integrated in days instead of weeks because the protocol layer was reusable

What I Didn't Do Well at This Level

  • Didn't write enough internal RFCs or design docs โ€” decisions lived in my head and Slack conversations
  • Informal mentoring only โ€” should have created structured onboarding and growth programs
  • Didn't measure or communicate my org-wide impact effectively

Staff-Level Portfolio Checklist

Item Did I Do It?
Cross-team initiatives โœ… Multi-tenant LMS, form engine, ISO bridge
Standards/tooling adopted org-wide โœ… Form engine used by 3 teams, ISO bridge became standard
Technical strategy docs โŒ Under-documented โ€” major gap in my portfolio
Problem framing at org level โš ๏ธ Did it instinctively but never formalized

Stage 5: CTO-Level โ€” Business Strategy Through Technology (Current)

What I'm Selling Now

Business outcomes through technical strategy. As a founding/lead engineer at multiple ventures and now building AI-powered products, my portfolio is about how technology creates business value โ€” revenue, cost reduction, competitive moats.

What I'm Actually Doing

AI/LLM Strategy at MiniMax

  • Evaluating and deploying AI models for production use cases
  • Strategic decision: Chose MiniMax M2.7 over GPT-4o for cost-performance ratio โ€” 10-20x cheaper with comparable quality on coding benchmarks
  • Business impact: Reduced AI inference costs by 90%+ while maintaining output quality
  • Full article โ†’

AI-Augmented Development Workflow

  • Built MCP (Model Context Protocol) orchestration with 11+ servers
  • Leverage: 3x developer output through AI-assisted architecture, coding, and review
  • Strategic insight: AI won't replace developers, but developers who use AI will replace those who don't
  • Full article โ†’

FOSS Contribution Strategy

  • Established faisalaffan/foss-contribution as the canonical source of truth for all open-source work
  • Maintained tools across Dart, Python, TypeScript, and Go ecosystems
  • Business rationale: Open source is the new resume โ€” every public repo is a portfolio item that works 24/7

This Platform (faisalaffan-news)

  • Built personal knowledge base spanning 20+ technical articles
  • Strategic decision: Writing publicly compounds โ€” each article is a backlink, a credibility signal, and a discovery mechanism
  • SEO-optimized, bilingual (ID+EN), with structured data for AI crawlers

CTO-Level Portfolio Checklist

Item Did I Do It?
Strategic decisions (build vs buy) โœ… AI model selection, stack choice, FOSS strategy
Business impact metrics โœ… 90% cost reduction, 3x developer output
Org design & hiring philosophy โš ๏ธ In progress โ€” building team structures now
Budget & vendor management โš ๏ธ AI API cost optimization done โ€” traditional infra budget pending
Risk management โš ๏ธ Architecture patterns documented, formal DR plans incomplete

Career Retrospective: What I'd Tell My Younger Self

Start Writing Publicly on Day One. Every bug you fix, every architecture

decision you make โ€” write it down. Your 2026 self is mining your 2020 notes for content. Your future career literally depends on the documentation you write today.

Open Source from the Beginning. Your first PR to a real project is worth

10 personal repos. It teaches you: reading unfamiliar codebases, navigating contribution guidelines, receiving code review from strangers. These are the skills that get you hired at senior+ levels.

Measure Everything. "Faster," "better," "more scalable" are opinions.

"API latency dropped from 800ms to 200ms" is a fact. Facts go in your portfolio. Opinions don't.

Your Network Is Your Net Worth (Yes, It's Clichรฉ for a Reason). Every

job I got after my first one came through someone who read my writing, used my open-source tool, or saw a talk I gave. Cold applications are the worst ROI activity in your career.

Don't Skip the Fundamentals Chasing Hype. Kubernetes is cool. But you

know what's cooler? Understanding how TCP handshakes work when your MQTT broker keeps dropping connections at a remote mine site. Fundamentals save you when abstractions leak โ€” and they always leak.


This article is living documentation. As my career evolves, I'll update each section with new projects, new decisions, and new lessons. Because the best portfolio is the one that's never finished.

Related stories

Career
Career
What I Did at the CTO Level โ€” Business Strategy Through Technology

What I Did at the CTO Level โ€” Business Strategy Through Technology

At this level, your portfolio isn't about technology โ€” it's about how technology created business value. I reduced AI inference costs by 90%, built an MCP orchestration that 3x'd developer output, and established a FOSS strategy where every repo is a 24/7 portfolio asset. This is what engineering leadership actually delivers.
Faisal Affan
Faisal Affan
Published
Career
What I Did as a Junior Developer โ€” The Fundamentals That Shaped Everything

What I Did as a Junior Developer โ€” The Fundamentals That Shaped Everything

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.
Faisal Affan
Faisal Affan
Published
Career
What I Did as a Mid-Level Engineer โ€” Shipping, Ownership & Production Scars

What I Did as a Mid-Level Engineer โ€” Shipping, Ownership & Production Scars

I shipped real features to real users. I broke production and fixed it alone at 2 AM. I built a mobile banking app with 680K downloads, a mining fleet system saving $200K/year, and a field operations platform for 4.1M users. This is what mid-level engineering actually looks like โ€” the projects, the metrics, and the production incidents that made me a real engineer.
Faisal Affan
Faisal Affan
Published
Career
What I Did as a Senior Engineer โ€” Architecture, Trade-Offs & Technical Judgment

What I Did as a Senior Engineer โ€” Architecture, Trade-Offs & Technical Judgment

I stopped being evaluated on lines of code. I was evaluated on decisions โ€” what architecture to use, what trade-offs to accept, and how to guide other developers. This is the real story of designing IoT telemetry for 50K events/sec, microservices for Australia's largest insurer, and the stack decision that became my most-read article.
Faisal Affan
Faisal Affan
Published