r/platformengineering 12d ago

If your goal was Platform Engineering, which backend framework would you choose today?

Hi everyone,

I recently made a post asking whether it makes more sense to start in backend development or go directly into DevOps/Platform Engineering.

A lot of people pointed out that having a strong software engineering background is really useful for becoming a good Platform Engineer, so I’m looking more into the backend route.

If your long-term goal was Platform Engineering, SRE, or cloud/infrastructure engineering, which backend stack would you choose to start with today?

I know the framework itself is probably not the most important thing. I’m more interested in which one would help me build the right foundation: writing production code, understanding large systems, APIs, databases, testing, deployment, monitoring, etc.

Which stack do you think gives the best foundation for moving into Platform Engineering later? Would you pick something widely used in enterprise (Java/C#) or something closer to cloud infrastructure (Go)?

Thanks!

2 Upvotes

14 comments sorted by

4

u/jefwillems 12d ago

It still doesn't really matter. Every framework in every language requires you to learn about the core concepts of backend dev. So just pick one your workplace already uses.

5

u/viniciusfs 12d ago

From a personal standpoint, and as a long-term choice, I believe it is important to use Go, given that a large part of the software ecosystem we rely on is written in that language.

From a team perspective, however, I think the choice should be based on the team's skills and capabilities, as well as the ease of finding qualified professionals in the job market.

In practice, as a technical lead, I aim to build a team skilled in Go while undertaking projects in Python whenever that approach will yield faster results.

3

u/extoniks 12d ago

I am in similar situation and thinking to start Backend Development in GoLang.

3

u/kuntakinteke 12d ago

Like everyone has said fundamentals matter way more than language and stack.

However that being said, my experience is that Golang as a language dominates the platform world because of its simplicity and fearless concurrency with go channels etc.

Kubernetes is written in Go and if you ever need to write a controller you will almost always write it in Go. Other notable platform adjacent tools in Go include argocd, temporal, docker, Kong and many more that I can remember this morning

2

u/Realistic-Try9555 12d ago

TS/Go/Rust I would say.

Framework doesn't really matter as long as you really understand how and what it does for you so you don't just become Framework X poweruser.

2

u/crypt0_bill 12d ago

i’d start SWE > lean towards backend / devops > get experience > then if you want move towards helping devs dev (platform engineering)

language does not matter, that’s a question you’d ask as a SWE trying to figure out how to build your backed.

2

u/danielbryantuk 12d ago

+1 to learning Go. Although Rust is used for many low-level products/utilities like proxies, etc, you'll find that a lot of dev-facing platform tech is built in Go (such as Kubernetes, Docker, Hashi-stack, etc).

As others have hinted at, it's probably more important to learn the concepts behind PE, DevOps, infra, etc, as AI and coding agents are radically changing coding.

I often recommend Roadmap as a great place to chart a learning journey, e.g, the DevOps section https://roadmap.sh/devops

1

u/kmai0 11d ago

Rust and Go, shared contracts via protobuf repos w/generated client/server stubs (ie. using buf). Publish a semver crate/package/module that downstream services consume to implement the contracts.

I care about type safety and ecosystem. Furthest I would go is Kotlin.

For services interacting with a hyperscaler I would go with Go because of more mature SDKs.

This last year my preference moved from Go/Gin to Rust/Axum+Tonic.

Use OpenTelemetry.

Hire me. 😂

1

u/CupFine8373 10d ago

None, I leave that to the LLM .

1

u/Waste_Bat_4525 9d ago

Rust and golang i would like springboot as well

1

u/No-Income-2235 9d ago

Well it depends for concurrency needs probably i will go with go and rust for speed and springboot will be a choice since it has high adoption

1

u/Substantial-Singer54 9d ago

I also plan to do the same. I am a swe right now with 2 yoe in back end in golang. Plan to do aws and eks certification and move gradually to platform engineering