Skip to content
All Posts
Technical Deep Dives

FastAPI for Non-Engineers

4 April 20252 min read

I am a project manager who writes Python. That sentence still feels strange, but here we are. I picked up FastAPI six months ago and it has changed how I approach internal tooling problems.

Why FastAPI

I evaluated Flask, Django, and FastAPI. Flask felt too bare. Django felt too heavy for what I needed. FastAPI hit the sweet spot: automatic API documentation, type hints that catch errors before runtime, and async support out of the box. For someone who is not a full-time developer, the automatic Swagger docs alone are worth the switch.

What I Built

Our team had no visibility into capacity across projects. Engineers were overcommitted, and I was tracking availability in spreadsheets. I built a simple API that pulls data from Jira, aggregates it, and serves a capacity dashboard. The whole thing is maybe 400 lines of Python.

@app.get("/api/capacity/{team_id}")
async def get_team_capacity(team_id: str):
    members = await fetch_team_members(team_id)
    allocations = await fetch_allocations(members)
    return calculate_availability(allocations)

That is a simplified version, but you get the idea. Three endpoints, a PostgreSQL database, and a basic frontend. It took me two weekends.

The PM Advantage

Here is what most engineers do not realize: PMs understand the problem space better than anyone. I did not need to write elegant code. I needed to solve a visibility problem that was costing us sprint predictability. The code just had to work and be maintainable enough that an engineer could improve it later.

Should You Learn It

If you are a PM who is comfortable with Python basics, yes. FastAPI's learning curve is gentle, the documentation is excellent, and building your own tools means you stop waiting in the backlog queue for internal tooling that never gets prioritized.


Back to all posts