I’m seeing a lot of job descriptions for Full Stack roles mentioning the BFF pattern, especially with GraphQL or Hono. I thought we were moving toward "Serverless everything." Why are companies going back to creating dedicated backend layers for specific frontend clients? Is this something a junior dev needs to master for their portfolio?
3 answers
We shifted back to BFF because our mobile app and web app needed vastly different data structures. Using a single "monolithic" API was causing massive over-fetching and slowing down our mobile users on 4G. By using a BFF layer—we use Hono on Cloudflare Workers—we can trim the JSON response specifically for the device. For a junior, having a project that demonstrates a BFF architecture shows you understand performance optimization and "client-aware" engineering, which is a huge step up from just building a basic CRUD app.
Does implementing a BFF layer add too much maintenance overhead for a small team compared to just using a robust tool like Supabase?
BFF is great for security too. You can hide complex third-party integrations and secrets behind that layer so the client never sees them.
Exactly, Valerie. It acts as a perfect security perimeter. Derek, definitely add a BFF project to your portfolio; it shows architectural maturity.
Simon, it depends on scale. For a startup, Supabase is fine. But once you hit a certain complexity, the "one-size-fits-all" API starts to break. The overhead of a BFF is a "good problem" to have because it means your user base is diverse enough to require specific optimizations.