News for hackers. Stuff that matters.
Re:On Being a Principal Engineer by maxxxxx on Sunday February 10, 2019 @12:27PM (#19128760)
"But I am also at this weird point where I am not sure if the title of "staff/principle" can be transferred to another company. A lot of the value that I add now is because of the historical knowledge I have. What we have tried as a company, what we haven't, why we built some things the way we did, how things work currently, how the politics works and the trust I have built. "

This worries me too. Within my company I have a pretty good reputation due to experience but I am not famous in the industry so I don't think any leverage I have my with my current company will translate into finding jobs at other companies.

That's a pattern I actually see quite often. People go very high in one company, but when something happens and they leave that company due to layoffs or other reasons they often find jobs only several levels lower and have to work themselves up again.

Re:On Being a Principal Engineer by analog31 on Sunday February 10, 2019 @12:43PM (#19128885)
I'm in exactly this situation, at Senior Staff level. It is quite possible that a person is actually getting paid enough to make it hard for them to leave, which seems strange because it's not not the norm. The company may want to keep them because of what they can do for that company, not because of their potential market value to another company. They may know things about you, that are hard for you to communicate in a job application situation, such as how you work with people.

I've decided to adopt the attitude: Enjoy it while it lasts, but don't count on it lasting forever. Live a lifestyle consistent with your market value, and squirrel the rest away. I'm also conscious about keeping my tech skills up to date.

I'm reminded of an old saying among people in the entertainment business: Think about how you treat people on your way up, because you will meet them again on the way down.

Re:On Being a Principal Engineer by pm90 on Sunday February 10, 2019 @02:53PM (#19129614)
> I've decided to adopt the attitude: Enjoy it while it lasts, but don't count on it lasting forever. Live a lifestyle consistent with your market value, and squirrel the rest away. I'm also conscious about keeping my tech skills up to date.

Same here. Its kinda easy to be fooled into feeling complacent when you get compensated very well and are respected for what you do and have done so far. But it will never be enough to keep you around forever; there are so many failure modes that you have to think about the possibility of being on the job market again.

Which is another reason why (apart from plain old human decency) I do make it a point to reply to most of the recruiters that try to recruit me with a polite explanation that I'm happy where I am currently but please lets stay in touch so in the future if things change we can try again.

Re:On Being a Principal Engineer by analog31 on Sunday February 10, 2019 @05:04PM (#19130381)
Indeed, I'm quite happy at my job right now, but stuff happens, and companies large and small have evaporated overnight.
Re:On Being a Principal Engineer by swagonomixxx on Sunday February 10, 2019 @01:28PM (#19129174)
> Think about how you treat people on your way up, because you will meet them again on the way down.

That’s an incredible saying. It really encapsulates the “fall from grace” that a lot of celebrities experience. Never saw it put in a way that would relate it to my life. Thanks for sharing!

Re:On Being a Principal Engineer by MisterOctober on Sunday February 10, 2019 @12:52PM (#19128943)
I can really relate to this. I 'climbed the ladder' in company X and thereby acquired a lot of company-specific domain knowledge that didn't really have much value outside the company. I realized what kind of a fix I was in years ago and started to lay some groundwork for moving to another firm, but it took until this year to find a company that would place enough value on my [opaque] work at X to hire me at a salary that was comparable.

Lesson learned : make a conscious and focused effort to acquire + maintain general skills and keep a visible portfolio updated!

Re:On Being a Principal Engineer by teekert on Sunday February 10, 2019 @02:24PM (#19129487)
Great tip, I feel more and more that my company has ancient tech that they still adhere to (basically as massive VM riddled with third party expensive proprietary software making it impossible to eat our own dog food even) and I now have three choices 1: Learn it and grow in this company but get stuck, 2: Force modern scaleable ways upon them (I've seen people try and fail but I hear more and more employees complain, perhaps I can be the one to lead change) or 3: Leave. I think I'll make this decision within 1 or 2 years (still a lot to learn).

But I feel more and more that growing in this company may be a trap.

Re:On Being a Principal Engineer by fma on Sunday February 10, 2019 @05:13PM (#19130435)
I'm in the same boat. Funny how many people here are on the same boat. So many smart people but they feel like they can't prove themselves to land a job at another company. I feel that is one thing that stinks about our industry. I think option 1 and 2 are difficult..it takes a talented leader to pull off, but it may not be appreciated by people who haven't been there.

Meaning, it's easier to create a new project using x,y,z new tech. But to transform a company and bring business value from old tech, is more difficult.

Re:On Being a Principal Engineer by bsder on Sunday February 10, 2019 @05:31PM (#19130520)
I suspect you are probably at the "leave" stage.

Part of being at the principal/staff level is the ability to effect corporate change for the good of the business goals.

If that isn't happening, you need to ask some very hard questions as to why.

Re:On Being a Principal Engineer by javadocmd on Sunday February 10, 2019 @01:27PM (#19129166)
I would argue that company-specific historical knowledge is not the value you (et al) are bringing. The value is the soft-skills of effective leadership that distinguish Principal from Senior (to use the article's parlance). Successfully transferring this to another company is an exercise in knowing how to demonstrate and sell those skills. And, of course, in finding a company and an interview panel that understands their value.

Anyone worth their salt should realize that the long-term value of technical leadership far eclipses the short-term value of knowing what happened that one time we tried switching from Technology A to Technology B. (And unless you've completely purged your engineering department, such institutional knowledge is there to be queried.)

Re:On Being a Principal Engineer by scarface74 on Sunday February 10, 2019 @05:03PM (#19130374)
Managerial principles also state that your value to a company is also partially based on the relationships and good will you’ve built that enable you to be more affective when you need something from another team or department and even the relationships you’ve built with vendors and customers.
Re:On Being a Principal Engineer by fromMars on Sunday February 10, 2019 @05:46PM (#19130596)
I am believer in promoting from within for the most part.

At the companies I have worked at, hiring people directly into principal roles hasn't worked well. Invariably, they struggle to fulfill that role because they don't have enough knowledge about the inner workings, code base, etc.

It usually takes them at least a year before they contribute at their level.

Re:On Being a Principal Engineer by maxxxxx on Sunday February 10, 2019 @02:04PM (#19129373)
“Successfully transferring this to another company is an exercise in knowing how to demonstrate and sell those skills”

Any ideas for doing this other having a lot of public visibility? I may have answered the question already but there may be other ways .

Re:On Being a Principal Engineer by tibbetts on Sunday February 10, 2019 @02:54PM (#19129618)
Learn to talk about your accomplishments like an entrepreneur or executive would: impact with quantified customer and company value. Not “I switched our development from Java to Go” but “improved time to deliver new customer functionality from 8 weeks to 4 weeks through new platform choice. Improvements in agility yielded $8 million in revenue growth.”

Another thing I don’t see enough in this thread is emphasizing software you managed to avoid writing. That’s the real secret of being a 10x engineer: telling your organization when building something expensive is not necessary, either because you don’t really need it, can use something simpler, or can adopt something that already exists.

Re:On Being a Principal Engineer by matwood on Sunday February 10, 2019 @03:34PM (#19129842)
> Not “I switched our development from Java to Go” but “improved time to deliver new customer functionality from 8 weeks to 4 weeks through new platform choice. Improvements in agility yielded $8 million in revenue growth.”

This is important for any level job. Java to Go by itself is really only interesting for a low level position. 8MM revenue growth is a person that will almost always get another look. In general, using exact numbers that can be backed up is better because they tell the why.

Using the Java to Go example. Sure, the work was done but why was it a good idea? What did the company receive out of the change? How did the interviewee think about and mitigate the risks?

Re:On Being a Principal Engineer by roel_v on Sunday February 10, 2019 @06:20PM (#19130793)
How does anyone quantify the value from something as generic as switching programming languages/frameworks to a number as specific as '8mm'? It could just as well have grown by that much even if there had been no switch. When I see formulaic nonsense like that in a CV, it better be meticulously sourced and they better be prepared to defend such a number in a potential interview, because usually I'll bin them with the other bullshit artists straight away.
Re:On Being a Principal Engineer by matwood on Monday February 11, 2019 @08:11AM (#19134166)
> How does anyone quantify the value from something as generic as switching programming languages/frameworks to a number as specific as '8mm'?

In addition to what pm90 already said, if you can't quantify the value to the business on some level, then why are you doing the work?

My comment also said to back up the numbers. If I said I wrote a little utility and it saved the company 8B/year I better be able to explain how.

Also, the numbers do not have to necessarily go directly to revenue. Less bugs, faster feature development, less server resources, lower costs, better estimates, etc... are all quantifiable on some level. Is this an exact science? No, but this is what any engineer above junior (even they should be asking why are they doing something), should be asking themselves about every single engineering task. Because something is new and shiny is generally not a good answer, yet these types of migrations still happen in companies and waste large amounts of money.

Re:On Being a Principal Engineer by pm90 on Sunday February 10, 2019 @10:12PM (#19131785)
One of the best things I've see engineers do to get their team the resources it needs is to spend time on modelling the value that they generate for the org. Speaking candidly... this could be any number at all, but most teams try to make it quantify the value generated in some meaningful way at least (even if that may not be admissible from a purely accounting/GAAP perspective).

e.g. it could simply be how much client data is processed by your system everyday, how many clients use it, what is the ultimate value the pipeline generates (even if that may be the cumulative value generated by the entire software pipeline)

Re:On Being a Principal Engineer by tdumitrescu on Sunday February 10, 2019 @05:36PM (#19130544)
Oh man, I see so many resumes littered with these kinds of statements. I totally gloss over them as they generally read like BS, and are formulaic enough that they just represent another "how to sell yourself" job-hunting checkbox point. Lots of devs would love to have some way to quantify our impact in monetary terms but the reality is that "process/tooling change X -> $Y ARR" is basically always hand-wavy made up math.
Re:On Being a Principal Engineer by tibbetts on Sunday February 10, 2019 @08:13PM (#19131347)
Sure, but most business decision making is based on hand wavy made up math. Like, how do you decide to build a feature or switch programming systems? Does it not relate to customers or revenue?

Also, yes, don’t have the numbers be BS or fail to include other useful narrative in your resume. But I so often see none of this, and leaving it all out is a sign someone hasn’t had to justify their decisions at that level.

Re:On Being a Principal Engineer by riku_iki on Sunday February 10, 2019 @09:12PM (#19131567)
It is task of decision making person to filter out hard facts from BS. If he does good job - company is more successful.
Re:On Being a Principal Engineer by riku_iki on Sunday February 10, 2019 @09:09PM (#19131560)
It is a good question for interview to discuss how those numbers have been derived.
Re:On Being a Principal Engineer by javadocmd on Sunday February 10, 2019 @04:06PM (#19130034)
In addition to tibbett's point (expressing technical accomplishments in terms of their value to the business), do some honest introspection on your value to your peers. I'm really just elaborating on Ms. Botros' article here, but for example you want to ask yourself these kinds of questions:

Do you improve the skills of the people around you? Do you identify and help resolve barriers faced by your peers? (This doesn't always mean fixing things yourself!) Do you improve the environment and culture where you work? Can you work collaboratively to establish a vision for change? How do you gain the buy-in of your peers when it comes time to implement change?

Internalizing these answers will prepare you to steer the conversation onto the skills that you know are important for the role.

Re:On Being a Principal Engineer by micksabox on Sunday February 10, 2019 @10:46PM (#19131902)
Building RefactorKit.com to help with this too:

> Successfully transferring this to another company is an exercise in knowing how to demonstrate and sell those skills.

Re:On Being a Principal Engineer by imetatroll on Sunday February 10, 2019 @06:26PM (#19130820)
I think you are wise to worry. Last year I was laid off from a company whose technology I helped build for years. I was promoted up to the position of "CTO"... with no team below me. It was a very small company working on email archiving and encryption that still runs today. As the system admin and solo developer I was spread thin, working on a system that now processes anywhere from 80 to 120 (150?) million emails a month. In the last several months I sent out my resume to at least 40 different companies, but the only offer I received was through someone my previous boss knows. It isn't a CTO level position.

To be clear I was let go because the company ended up having financial difficulties. It is a strange story to tell and sometimes I wonder if people think I am weaving it as I go. I'm not. It did leave me severely burnt out and I find the question "what was your biggest accomplishment?" to be a frustrating one during interviews because I did so much for that previous company that I almost don't remember any of the subtle details. I thought that the numbers would speak for themselves but nobody seems to care. I find it bizarre.

The other thing that might be fascinating is that the technical portion of interviews seem to be where things stall out for me. I would never claim to be an incredible programmer, but my previous companies system was not a trivial piece of software. I am probably going to give my one and only job offer a try and see how that goes. shrugs

Finally when I say build I mean to say that there was a PKI api + c library for interfacing that layer when I started. The website, the inbound/outbound email processing, the ES portion of the service etc were all built by me. So the parts that brought the actual customers were built by me.

Re:On Being a Principal Engineer by D-Coder on Sunday February 10, 2019 @06:39PM (#19130873)
"I find the question "what was your biggest accomplishment?" to be a frustrating one during interviews because I did so much for that previous company that I almost don't remember any of the subtle details."

I've kept a daily work log at my last few jobs -- just a line about each significant thing I made progress on, so usually one sentence a day (and often the same sentence for several days). This could be helpful.

Re:On Being a Principal Engineer by imetatroll on Monday February 11, 2019 @09:44PM (#19140558)
Thanks for the suggestion I will keep it in mind once I find another job.
Re:On Being a Principal Engineer by james_s_tayler on Sunday February 10, 2019 @11:53PM (#19132172)
I've been doing this starting this year. It's magic.
Re:On Being a Principal Engineer by tracer4201 on Monday February 11, 2019 @03:09AM (#19132778)
Contributing a ton and then not being able to speak to it isn’t that abnormal. Well, at least I felt in the same boat.

I keep a daily log of outstanding and completed tasks. It includes everything from high level sprint stories or tasks to setup meeting with such and such for some project or write status report for z.

Re:On Being a Principal Engineer by maxxxxx on Monday February 11, 2019 @09:57AM (#19134858)
“The other thing that might be fascinating is that the technical portion of interviews seem to be where things stall out for me. I would never claim to be an incredible programmer, ”

The interview process filters for coming up with solutions quickly. My strength has always been that I worked through a situation even after the initial or obvious approach(es) didn’t work. A lot of people give up quickly but I keep going and solve it. You sound similar.

Unfortunately the interview process doesn’t filter for that.

Re:On Being a Principal Engineer by imetatroll on Monday February 11, 2019 @09:43PM (#19140551)
Yes we probably are. I don't usually walk away lightly from a problem that initially gives me difficulty, but the speed with which I can execute just doesn't seem to satisfy the hiring process. It is frustrating.
Re:On Being a Principal Engineer by alchemism on Thursday February 14, 2019 @06:22PM (#19167054)
Try interviewing for senior SRE positions, if you would like that quality to become an asset towards being hired.
Re:On Being a Principal Engineer by james_s_tayler on Sunday February 10, 2019 @11:54PM (#19132175)
This is one thing I consider as a criteria. Will it make a good story?
Re:On Being a Principal Engineer by imhoguy on Sunday February 10, 2019 @01:34PM (#19129209)
People who leave your company may poach you some day, so continue your quality work and keep in touch with them. That is called networking.
Re:On Being a Principal Engineer by TheGRS on Sunday February 10, 2019 @12:39PM (#19128863)
Market forces can be tough to predict. There was a dearth of software engineers in the last 8 or so years and many of us have reaped the rewards. The hacker news articles used to be about switching jobs every 1-3 years to advance your salary and career. I don't see so many of those these days, which makes me suspect that many have found themselves in senior-level or managerial roles that they find satisfying, and maybe some found themselves in architecture roles that are very difficult to advance from (but still pay well).
Re:On Being a Principal Engineer by ec109685 on Sunday February 10, 2019 @02:26PM (#19129499)
I think it more likely companies adjusted their salary bands to be at least in the ballpark of each other, so you either need to move locations or take a “riskier” job if you want an automatic large bump in salary. There are clearly exceptions to this, but in general, companies have started to wise up.
Re:On Being a Principal Engineer by valleyjo on Sunday February 10, 2019 @02:25PM (#19129493)
I’ve seen this happen even within the same (large) company. Someone is a director level who has maybe 100 reports. The entire product gets cut. The IC’a find other jobs within the company. There are only so many Director level positions around and many of them are achieved organically. The ex-director then goes somewhere else as a regular engineering manager unlikely to ever have such a position again.
Re:On Being a Principal Engineer by scarface74 on Sunday February 10, 2019 @05:06PM (#19130397)
Three of my former managers “self demoted” to an IC because they didn’t really enjoy management. Including one of my former managers who is in his late 50s who self demoted after his kids graduated. Now he’s a full stack React/C#/Azure developer and said he threatened to quit his job when they tried to promote him.
Re:On Being a Principal Engineer by erichurkman on Monday February 11, 2019 @11:22AM (#19135568)
You need a path of self-demotion otherwise the only route to fixing a misplaced promotion is by firing or quitting.
Re:On Being a Principal Engineer by pm90 on Sunday February 10, 2019 @03:03PM (#19129665)
Yeah this is pretty common in most large enterprises. If your company is not in a hyper-growth stage (i.e. its a cash cow) then upper management positions become a game of musical chairs and political infighting as some leaders try to promote "their" people to top positions to hold on to their power and status.

I guess there are certain folks who find this enjoyable. Personally I find it a massive waste of really good talent and perhaps the single biggest reason why I enjoy the dynamism of the SV startup ecosystem even if I don't directly participate in it.

Re:On Being a Principal Engineer by hk-mars on Sunday February 10, 2019 @11:44PM (#19132133)
Yes, this situation also make uncomfortable. My company needs me to create new features and design implement the framework, but those managers always get involved with me. I known I can create more technical new features as competitive-advantages for the company at this stage.
Re:On Being a Principal Engineer by TuringNYC on Sunday February 10, 2019 @07:09PM (#19131051)
That sounds like a liquidity problem (not enough positions opening up, and opening up infrequently) rather than a qualification problem (not qualified for director positions elsewhere.) Presumably, if the ex-director waits long enough they may find another director position (or not...)
Re:On Being a Principal Engineer by bitL on Sunday February 10, 2019 @01:01PM (#19129016)
> I don't think any leverage I have my with my current company will translate into finding jobs at other companies.

You are right. Even if you are at FAANG, it doesn't really translate to a new environment, unless you are a direct pick by a CTO (you have to be famous in some way) or use your networking, which I consider unethical and don't do it.

Re:On Being a Principal Engineer by maxxxxx on Sunday February 10, 2019 @01:07PM (#19129051)
"use your networking, which I consider unethical and don't do it."

Please don't shoot yourself in the foot. There is nothing unethical about this.

Re:On Being a Principal Engineer by fouc on Sunday February 10, 2019 @01:36PM (#19129218)
I think you misunderstand networking.

Perhaps you think it's a way for people to create and then exploit their connections in order to get a job that they're clearly unqualified for. I will agree that's unethical.

But that's not typically what networking is about, almost no one wants to recommend someone for a job if that person turns out to be an unqualified idiot. Networking is more about finding people/companies you have something in common with and once they know about you it's a lot easier to get hired or referred.

It's not really about some form of nepotism or cronyism.

Re:On Being a Principal Engineer by foobarian on Sunday February 10, 2019 @02:51PM (#19129606)
It feels like the OP came from a corrupt or communist locale where cronyism and nepotism were rampant. I grew up in a communist country like this and always found networking distasteful for that reason. However on the spectrum of hiring signals available it just turns out to be one with a very good SNR due to the trust involved.
Re:On Being a Principal Engineer by viscanti on Sunday February 10, 2019 @01:06PM (#19129045)
> use your networking, which I consider unethical and don't do it.

I don't understand the sentiment. Interviews are a proxy for how good you are. The companies hiring are very limited by what kind of information they can turn up about a candidate just through that process and for higher leveled positions like staff+ that might rarely be enough. Your network can speak much better about who you are and what value you can bring to a company. I don't understand how giving a hiring company better signal about your value is unethical.

Re:On Being a Principal Engineer by bitL on Sunday February 10, 2019 @01:23PM (#19129140)
I have seen how groups of people with dubious ethical standards played whole companies, pushing each other forward at the expense of more capable people, later taking their cronies with them to whatever company they landed, applying the same strategy. One of them made it to a director position at Google, largely propelled by "great networking". I can't with clear conscience support cronyism that deprives others of their shot at greatness and don't do it myself (rejected a couple of CTO roles advised by a friend with contacts etc.). I decided that expert/meritocracy ideal is better than what I see throughout the industry and academia.
Re:On Being a Principal Engineer by matwood on Sunday February 10, 2019 @03:42PM (#19129898)
> pushing each other forward at the expense of more capable people, later taking their cronies with them to whatever company they landed, applying the same strategy.

So says you. This can also be thought of more charitably that someone hires people they know because there is much less risk. I've been working in software for ~20 years. I have a decent list of people who I would work with again, know what they bring to the table, and their strengths and weaknesses. If I had to build a new team tomorrow, you can bet I would be calling the people I know first.

Re:On Being a Principal Engineer by scarface74 on Sunday February 10, 2019 @05:11PM (#19130426)
When I was a dev lead, you better believe I pulled in my former coworkers as well paid contractors because I trusted them. There was nothing underhanded about this. I let my manager and his manager know that they were friends and I had them go through extra interviews with my manager even though I usually had the final say about the contractors we brought in. I needed someone I could trust.
Re:On Being a Principal Engineer by fouc on Sunday February 10, 2019 @01:36PM (#19129225)
cronyism and networking are quite different things though
Re:On Being a Principal Engineer by bitL on Sunday February 10, 2019 @01:51PM (#19129310)
I agree that in theory they are different, but in practice they seem to blend quite significantly (viewed with my sample size of 1 of course).
Re:On Being a Principal Engineer by viscanti on Sunday February 10, 2019 @02:15PM (#19129449)
I just think you're over fitting to that sample size of one. It's like saying you're never going to talk to another human because two people once plotted a crime by talking to each other. You're conflating the ends with the means.
Re:On Being a Principal Engineer by monktastic1 on Sunday February 10, 2019 @03:44PM (#19129911)
Does that mean that you don't trust yourself to separate them in practice?
Re:On Being a Principal Engineer by marssaxman on Sunday February 10, 2019 @09:58PM (#19131730)
Cronyism is what you call it from the outside; networking is what you call it from the inside.
Re:On Being a Principal Engineer by bcyn on Sunday February 10, 2019 @01:18PM (#19129111)
> networking, which I consider unethical and don't do it

Humans are a social species, you can't avoid this if you want to get far.

Re:On Being a Principal Engineer by matwood on Sunday February 10, 2019 @03:36PM (#19129861)
> or use your networking, which I consider unethical and don't do it.

Have you worked with people who you would work with again and vice versa? Congratulations, you are using your networking.

Re:On Being a Principal Engineer by dacox on Sunday February 10, 2019 @01:04PM (#19129032)
You consider networking to find a new job unethical?