Live data from Hacker News

What does a Principal Software Engineer do?

blog.devgenius.io

71–80 of 176 posts

Re: What does a Principal Software Engineer do?

#71
post #22

The pay for principal SWE can get up to $1m+ (at large sv tech companies, or even at startups assuming their equity pans out). That $800k number is more accurate for staff/senior staff.

Also, I want to add a more positive anecdote to accompany some of the more negative ideas of principal engineers. I’m a senior software engineer (L5 in FAANG terms) and I’ve worked with a handful of principal engineers who have all been incredible colleagues.

All the principal engineers I have worked with have been humble and ego-less engineers. There’s this notion that they just write docs but they’re invaluable code/spec/design reviewers, they have taken on major refactors to tackle tech debt that just lingered for years, and have generally unblocked me on so many occasions. The strongest principal engineers have never taken credit for massive projects they have orchestrated but “everyone knows” they’re valuable.

It takes a lot of skill, and I’ve found they switch between the “archetypes” effortlessly. Beyond that, they’ve helped me grow in my career and find impactful projects that look good on perf reviews. In my mind, the good ones are definitely worth their cost.

Re: What does a Principal Software Engineer do?

#72

Earlier quoted context omitted.

Or more generally: Job titles aren’t portable between companies in the tech industry. Don’t assume that they mean the same thing at every company. Don’t assume a company is underpaying people just because they’re giving out Principal Software Engineer titles. Principal Software Engineer at one company could just be the equivalent of Senior Software Engineer II at another company. On the hiring side, everyone knows th…

The vast majority of titles in tech confer more prestige than deserved, because there's no downside to a company handing them out like candy. I don't look at it as a portability issue, the incentive isn't to be accurate to begin with. Inflated seniority is just a perk they can offer that doesn't cost them any money, so everyone offers it. Titles across the industry are meaningless unless you're calibrated to that com…

There are only a few titles that mean anything, and normally it isn't what you think.

Legal at a bank only a vice president or higher can make some loan decisions. Thus if you go to a large chain bank to get a mortgage you will talk to a vice president. Their title must be vice president, but they doesn't make a lot of money, and don't have much power other than the ability to give you a mortgage.

Last time I posted the above someone chimed in "yeah, even though all I do is write code all day I'm a vice president because what my code does can only be done by a vice president"

You also see a lot of salesmen who are vice presidents - again they don't have a lot of power in the company, but the places they sell to want to talk to a vice president so sales hands out those titles.

Re: What does a Principal Software Engineer do?

#73
post #58

Earlier quoted context omitted.

My friend is a "Vice President of Engineering" at a fintech company. It's the lowest rung on their engineering ladder.

Vice Presidents at large financial institutions are a joke. Coming from any other industry you'd think it's some sort of executive position. Nope, just a random senior software engineer 8 levels down on the corporate ladder. To be fair the first 6 levels (all the way to the CEO) are all "Managing Directors".

Vice president at financial institutions have legal meaning. Thus a lot of people need to be a vice president just to legally do their job.

Re: What does a Principal Software Engineer do?

#74
post #5

Always keep in mind that sometimes the "principal engineer" title is just a company's only way of hiring a senior engineer because their pay bands are so far below market rate. Don't let a description of a Google principal engineer scare you away from inquiring and applying for principal engineer positions at other companies. Source: have been that person.

Or more generally: Job titles aren’t portable between companies in the tech industry. Don’t assume that they mean the same thing at every company. Don’t assume a company is underpaying people just because they’re giving out Principal Software Engineer titles. Principal Software Engineer at one company could just be the equivalent of Senior Software Engineer II at another company. On the hiring side, everyone knows th…

This reminds of a story I encountered in finance where everyone in the department got a bump in title as their bonus. I asked one what was difference in their role: nothing. Since everyone got bumped, everyone's role stayed the same. This was during the financial crisis and was the bank's (well known) cheap ass way to get away without paying a monetary bonus.

Re: What does a Principal Software Engineer do?

#76
post #28

Earlier quoted context omitted.

Or more generally: Job titles aren’t portable between companies in the tech industry. Don’t assume that they mean the same thing at every company. Don’t assume a company is underpaying people just because they’re giving out Principal Software Engineer titles. Principal Software Engineer at one company could just be the equivalent of Senior Software Engineer II at another company. On the hiring side, everyone knows th…

As someone whose first job title was "Assistant Director of IT," and who did nothing but write really bad PHP for a couple hours every day, this tracks with my experience. It also made interviewing harder because if you get a resume from someone with one job they've had for two years, and that job is Assistant Director, you're probably - rightfully - trashing that resume. I eventually learned to just change the title…

Yup. And I always am weary of any manager at a startup. They think just because they were a manager at a startup, it means they can be a manager at a much larger company. How many people did you manage? (some of them managed 1 person) What did you actually manage? (can't explain other than order people around) Don't assume the title means they know how to actually do the job at your company. Titles tend to be severely inflated at small startups.

Re: What does a Principal Software Engineer do?

#77

For anyone who is a Principal Engineer at a FAANG, what do you do day to day? I'm a Principal Engineer, not at a FAANG, and that mostly means i'm an expert at what I do and know the product inside and out, and I spend a good amount of time coding. I do also help others, answer questions, and deal with complex problems. I'd say I do 80% coding and 20% meetings / other things. I interviewed somewhere else and they want…

It depends.

On the whole my responsibilities are a mix of things:

1. Technical strategy - primarily writing strategy docs and discussing with other tech PEs. Usually precursor to architecture.

2. Business Strategy - reviews with non tech staff and leadership (across the org) about what the business needs are, where we see the future going. Often takes the form of reviewing other peoples documents or contributing sections to those

3. Product design reviews - reviewing CX/UX documentation

4. Architecture - Creating architecture documents - lots of text and boxes and lines. Several rounds of reviews. Usually precursor to coding or reading other people's code.

5. Coding - takes the form of staring at various IDEs and scratching my head.

6. Reading other people's code - same as above. Also include code reviews.

7. Operations - On call stuff. Usually where all the architecture stuff falls apart :-)

8. Mentorship - structured 1:1s, feedback, etc

9. Prototyping and demos

I spend probably 90% of my time doing the items above. The mix among these items varies but I consider all of it my work. For the rest I sometimes get pulled into the items below that are not officially my responsibilities

- Conferences and public speaking - I could, but choose not to

- Project tracking and reporting

- Managing people's careers directly

- Funding decisions

My work is rarely political depending on how you define politics. To me politics is about "who gets the cool stuff" so mostly funding decisions. I do get pulled in occasionally to sort out "who should build this" discussions but they are usually good faith discussions trying to align expertise and charters before funding decisions are made. Biz and tech strategy does involve consensus building but I suspect the Real Politics™ happen behind the scenes at higher levels.

Re: What does a Principal Software Engineer do?

#78

For anyone who is a Principal Engineer at a FAANG, what do you do day to day? I'm a Principal Engineer, not at a FAANG, and that mostly means i'm an expert at what I do and know the product inside and out, and I spend a good amount of time coding. I do also help others, answer questions, and deal with complex problems. I'd say I do 80% coding and 20% meetings / other things. I interviewed somewhere else and they want…

[deleted]

Re: What does a Principal Software Engineer do?

#79

For anyone who is a Principal Engineer at a FAANG, what do you do day to day? I'm a Principal Engineer, not at a FAANG, and that mostly means i'm an expert at what I do and know the product inside and out, and I spend a good amount of time coding. I do also help others, answer questions, and deal with complex problems. I'd say I do 80% coding and 20% meetings / other things. I interviewed somewhere else and they want…

You might find https://staffeng.com/guides/what-do-staff-engineers-actually... interesting.

Re: What does a Principal Software Engineer do?

#80
> To achieve the “org-level” impact, principal engineers need to be very selective on what to work on and use as much leverage as they can. For example, to set them up for success and maximize their influence, a principal engineer usually directly reports to a “director-level” engineering leader.

Whoa, that is a cynical take and smells a little of sour grapes.

I 100% agree that the PE title is abused both out of nepotism, and out of site-wide populism, but the intent is relatively pure, at least at large companies where the title actually matters:

There are some engineers that are so good at solving problems that they can be dropped into any crisis situation and help fix it, like a special forces soldier. After 30+ years in engineering I've seen them in action, and most of the time they deserve the title. They are just that good. Those are your PEs.

However, you need a large enough sample population to produce PEs because it is based on relative performance. It is harder to identify one in a group of 10, but in a division of 1000 it becomes abundantly clear.

Typically how you become a PE is by waiting in line and keeping at what you do, because usually there are only so many PE's promoted per year to help mitigate abuse of the system (there will be some in bigger organizations). This idea of being selective is ... misguided. You don't really have a choice.

Now combine those last two paragraphs and I can see how it appears there is room for gaming the system by only picking cherry products. However, it is unlikely you would be able to say to a VP or GM, "Hey, I want to work on THAT project, not this crap one you stuck me on, because I want more visibility for promotion!" Maybe that'll work, but good luck?

Post reply on HN