Gergely Orosz
@gergely.pragmaticengineer.com
35K followers 2.2K following 3.7K posts
Writing The Pragmatic Engineer (@pragmaticengineer.com), the #1 technology newsletter on Substack. Author of The Software Engineer's Guidebook (engguidebook.com). Formerly at Uber, Skype, Skyscanner. More at pragmaticengineer.com
Posts Media Videos Starter Packs
gergely.pragmaticengineer.com
It's here: learning.oreilly.com/library/view...

It's really full cricle: I pitched this exact book, with the exact structure to O'Reilly as my first choice publisher.

At the time, they decided to not go with it, and wished me best of luck. But finally it's available with them as well!
The Software Engineer's Guidebook
In my first few years as a developer I assumed that hard work was all I needed. Then I was passed over for a promotion and my manager couldn’t give me feedback on what areas to... - Selection from The...
learning.oreilly.com
gergely.pragmaticengineer.com
The Software Engineer's Guidebook is finally available on the O'Reilly platform! So if you have an O'Reilly subscription, you can read it.

This was a very frequently requested platform: glad that we could make it happen with the O'Reilly team!
gergely.pragmaticengineer.com
thank you! Yes I have a console and prefer those games. I have a kid who is more about the kinds of games that consoles don't have (e.g. decorate a room; dress up a character etc) and hence struggling with these iPad ones that are like that, but predatory in weird ways (a friggin' room decor game!!)
gergely.pragmaticengineer.com
... because your day has been a series of nonstop interactions, so you had to figure out how to do deep work in small chunks that could have been interrupted

I wonder if devs like this will embrace AI agents far faster (and maybe better?) vs devs used to only working "in flow"
gergely.pragmaticengineer.com
I get a feeling that working with multiple AI agents is something that comes VERY natural to most senior+ engineers or tech lead who worked at a large company

You already got used to overseeing parallel work (the goto code reviewer!) + making progress with small chunks of work
gergely.pragmaticengineer.com
Look you don’t know me, I don’t know you. I won’t tell you how to parent, please can you do the same?

I trust you are a great parent and do the best for your kids. Bye!
gergely.pragmaticengineer.com
Again, I’m pretty sure it’s because of loading ads in the background

Incredible that it’s not possible to pay for a game with no ads, no in-app predatory stuff, save for few exceptions (eg Apple Arcade)
gergely.pragmaticengineer.com
2. Game that has no online functionality and one I paid to remove ads won’t start without an internet connection / in flight mode!

3. In-app predatory payments with dark patterns everywhere
gergely.pragmaticengineer.com
As a parent with a kid who’s starting to play games on the iPad, I’m so pissed at the predatory state of kid’s games.

1. I pay $7 to remove all ads from this game. Yet catch my kid watching ads - even after paying they are offered to watch for in-game rewards. WTH

2. (cont’d)
gergely.pragmaticengineer.com
Three years later, this prediction happened as expected.

Bootcamps are mostly dead and have been dying since 2022: because of the job market.

New grads from college / uni can barely get jobs. Boorcampers even less so: no demand
gergely.pragmaticengineer.com
Brought to you by:

•⁠ Statsig ⁠ — ⁠ The unified platform for flags, analytics, experiments, and more. Check them out: statsig.com/pragmatic

•⁠ Linear – The system for modern product development, now with a useful Cursor integration. Give it a go: linear.app/pragmatic?ut...
Move Fast, Measure Everything
Statsig is your modern product development platform, with an integrated toolkit for experimentation, feature management, product analytics, session replays, and much more. Trusted by thousands of comp...
statsig.com
gergely.pragmaticengineer.com
For an AI startup today, what language would be the best choice: Python, TypeScript, Go or Rust?

Armin Ronacher is a great person to answer: a longtime open source contributor, creator of Flask (a Python fullstack framework), and he's building his AI startup. Spoiler: he's not using Python for it.
gergely.pragmaticengineer.com
The Linear Euro Tour tonight in Amsterdam. The dev asking a question from the Linear Eng team travelled from Germany to be here tonight 😲

Great event
gergely.pragmaticengineer.com
thank you - I'm going to do this. This is getting under my skin now
gergely.pragmaticengineer.com
Might be the sign for me to block ads. I've been lenient about this, but those without this issue all tell me they are agressively blocking all ads.

Time to bite the bullet. Thanks!

bsky.app/profile/just...
justbartek.ca
Wonder if there's a correlation here w/ ads & tracking, which has absolutely exploded in recent years. I don't observe the same jerkyness w/ Chrome, but I also use NextDNS to block a lot of traffic.

I don't think it's just that, but maybe contributes!
gergely.pragmaticengineer.com
All I do is open a few tabs in Chrome here and there - and an hour later my computer is jerky and lags.

I check, and every single time it's Chrome taking up well over 16GB.

In 2025 I still don't understand how memory can sprawl so much in browsers, and why

*kills Chrome*
gergely.pragmaticengineer.com
and yet, native mobile engineering was not all that understood by leadership

also, Uber had (and has) 5x or more backend engineers than mobile engineers.

I wrote the book www.mobileatscale.com based on all the stuff I had to explain to eng directors at Uber about how mobile is different...
Building Mobile Apps at Scale: 39 Engineering Challenges
The guide for building large, iOS and Android native apps - with the challenges and common solutions across the industry.
www.mobileatscale.com
gergely.pragmaticengineer.com
My frustration btw was not with how the promo didn’t happen.

It’s that there was no feedback on what was the gap in professional skills or experience needed

The feedback was professionally incomprehensible and so not actionable

And my management chain + HR didn’t see this as a problem but I did
gergely.pragmaticengineer.com
… got promoted with a slam dunk the next cycle (the committees feedback was they didn’t understand why he was rejected the last cycle).

A few years later Apple recruited him and he ended up owning one of the big apps almost everyone on an iPhone uses daily
gergely.pragmaticengineer.com
Anyway it was this awkward situation where I as a manager told the engineer the system is broken; I tried but couldn’t fix it; the committee feedback is BS and can be ignored and I’m just as frustrated as them except I didn’t miss out on a promo.

I’m the end, he stuck it out…
gergely.pragmaticengineer.com
Yes - I basically told them the promo committee is unqualified, I went as high as I could to fix it, and they should have been promoted, and the feedback is garbage.

Then told them I can help them find new teams and understand / support also if they’d leave and will give them the best references
gergely.pragmaticengineer.com
It was a TON of documentation! Which accidentally worked in my team’s favour: we were on a smaller site (Amsterdam) working with the US a lot so documented *everyting* especially that a lot of work was across time zones. Plus I always push to write things down

And still was tons of writing!
gergely.pragmaticengineer.com
2. Scaffolding on mobile is more lines of code and more verbose than backend, and some of it was generated

It was so maddening
gergely.pragmaticengineer.com
The feedback I recall was eg hung up on how their diffs were often large

… but didn’t understand that it was

1. all stacked diffs (all small!) that were large because CI on mobile took an hour to run and reviews. They basically expected backend workflow on a mobile, totally different codebase