For three years, Angular was my world. Components, services, RxJS observables, NgModules — I knew the framework inside and out. I was good at it. Comfortable. And that's exactly why I left.
The Pull of Backend
It started with a simple question during a project: what happens after the API call? I'd been sending HTTP requests to backends for years without really understanding what happened on the other side. One afternoon, I opened a FastAPI tutorial and wrote my first endpoint.
@app.get("/health")
def health_check():
return {"status": "alive"}
It was embarrassingly simple. But something clicked. The directness of Python, the clarity of FastAPI's type-driven approach — it felt like the code was getting out of my way instead of creating ceremony around every action.
The Uncomfortable Middle
The transition wasn't smooth. I spent months feeling like a beginner again. My Angular skills didn't transfer cleanly. I had to relearn how to think about data flow, error handling, and system design from a server-side perspective.
But I also discovered that the principles transferred perfectly. Component architecture taught me about service boundaries. RxJS taught me about async patterns. TypeScript's type system prepared me for Python's type hints.
Where It Led
Following that curiosity led me to databases, then to data pipelines, then to embeddings and vector search, and finally to building full RAG systems. Each step felt natural because I was following genuine interest rather than market trends.
The lesson: your career doesn't have to be a straight line. Sometimes the most valuable move is sideways.