- There’s an outage on a Sunday morning. A huge Slack thread starts. Devops and devs on call manage to fix the issue. Principal engineer gets involved ACKing other’s people comments, adding thumbs up emojis, and at the end says “Big thank you to all the people involved” (plus a rocket emoji)
- There’s a decision to be made regarding i18n for DB tables. Architects, senior devs and the principal engineer get together to talk about potential solutions. The principal engineer acts as a lean manager: let people talk in turns, does support good ideas (I mean, he’s not clueless ofc), does try to gather everyone in to a common solution... but never gets his hands dirty as in: “what do you think about solution X? I could work on a POC to see if it’s worth it”. If, after months, it turns out that the idea to be implemented does work, then he says “All the props to the team!” (No way, really? It’s obvious that all the props should go to the team! You, principal, did nothing!). If it turns out that the idea actually does not work, then “no one is to blame, let’s do it better the next time. Let’s get feedback and blah blah”. As I said, if something works or if something doesn’t, it’s never on the principal (but hey, he gets to make twice as much as the most senior dev in the company!)
- Microservices or modular monolith? Same as above. The principal engineer knows his stuff, but just as much as any other architect or senior dev, with the difference that the architects and senior devs are the ones who are going to do 99% of the work (both im terms of choosing the final decision and implementing them. The principal is just there to “support”... but that’s actually quite useless tbh) and they make significantly less money than the principal engineer.