Career advancement as a software developer in a flat organization
September 29, 2017 8:57 PM

I work in a flat organization - i.e., few managers, less hierarchy - as a software developer on a medium sized team. I'm wondering how hard work is recognized and career advancement happens in this organizational structure.

More than a couple team members have left in close succession and the team (and what management there is) had started to freak a bit. I noticed nobody was doing anything productive (the habits that made the people leave were likely to get repeated) so I stood up and have been guiding and organizing the team to answer the existential questions that have come up.

This organizational work is substantially different than what I typically do - write software. I'm happy to be doing it but it's 1. different, 2. tough and 3. is quite a bit more responsibility than what I've done before - I feel like if I do it wrong everything will descend into chaos and people will hate my guts. So far, it's been going well and I've received numerous pieces of positive feedback.

I've asked myself recently how this work I'm doing will be recognized and rewarded. If I continue to do this, a promotion doesn't feel right - this is not the work of say, a "Senior" Software Developer. A raise doesn't feel right - if I had to guess, a software developer's salary is much higher than a facilitator/organizer's. A reward or award of some kind seems inconsequential and fleeting for something as big as team/org structure/process change.

1. What do you think is appropriate recognition for work like this?
2. Moreover, how does any type of hard work in a flat organization get rewarded?
3. How does career advancement happen in a flat organization?

Basically, as a software developer, I see myself just becoming a better software developer at a place like this, which is not what I want. (The obvious solution is to find another job, but I'm also asking this question so I can help shape how the team functions today).
posted by lalunamel to Work & Money (7 answers total) 5 users marked this as a favorite
Can you be more specific about what kind of work you're doing? I understand you say that it's not the work of someone with the title "Senior Engineer", but IME the more senior you get the more organizational work you do in addition to writing code.
posted by asterix at 9:22 PM on September 29, 2017

if I had to guess, a software developer's salary is much higher than a facilitator/organizer's

As a general rule, management gets paid more than developers. What else do you think management does?
posted by praemunire at 10:34 PM on September 29, 2017

Get out.

It’s the work of management to determine what work is recognized and rewarded. In a flat organization, no one is doing this work. Recognition and rewards will come on an arbitrary, what-have-you-done-for-me-lately basis. As a software engineer you’re well positioned to benefit from this dynamic, but for a limited time.

Camille Fournier’s recent book The Manager’s Path comes from someone with decades of technology management experience who may be able to offer you some perspective? (I haven’t read it yet)
posted by migurski at 11:23 PM on September 29, 2017

"Flat" describes your org chart--it doesn't do much to describe how your company actually operates. The people you need to ask about how your company deals with these things are higher-ups and coworkers at your company, because I have seen multiple examples of "flat" software companies that were not actually very similar at all in how they handle this stuff, or for example how they intend to manage this structure in the face of future growth.

If you are technical management in a technical division of a company that pays its tech talent well, you are not going to take a salary decrease when you start running your team. Non-technical managers who just happen to manage technical people are a different story. I wouldn't be surprised if I make what my boss makes, but my boss understands what I do only as a combination of buzzwords and budget line items.

Technical management is at least hypothetically valuable, and if it's taking time away from you writing code and you like doing it less, then you should be compensated better for doing it. But the devil's in the details. Good project managers and good technical leadership can wind up doing very similar things but getting very different compensation for it.
posted by Sequence at 12:09 AM on September 30, 2017

Congratulations, it sounds like you've taken on the role of Software Engineering Manager, and possibly also Technical Lead! I have never been in a company with an org chart remotely close to flat, and that's how I hear it. Know that your contribution is contingent on you being able to understand the technical details of your "peers'" work: making other people more productive is a way to increase your impact vastly beyond what you can do as a solitary engineer, and there is no reason you should expect to be paid less for facilitation.

That said, how mature is your organization? Using the Tuckman model, it sounds like you're cycling between Forming and Storming, i.e. the team is entering Forming again after a few people left, you're establishing some kind of order, and the group is beginning voice opinions on whether they like it or not.

Do you have any evidence that leadership values the type of work you're doing, or can be convinced to value it? If not, as b1tr0t says, you might start getting dinged for not churning out as much code. [There is often a gendered aspect to this -- man and woman make technical contributions of similar size; woman also happens to pick up facilitation work that keeps everyone else going; woman gets told to stop acting like a PM, and the man gets promoted.]

Have you talked to the people who left and asked why? Sometimes it's sheer coincidence, but if they were also trying [worst case scenario here] to help bring structure to the team and were tired of getting lukewarm support from management, I'd take that as a signal.

Depending on your read of the political environment at your company, this could be very good or rather bad: the usual criticism of hierarchy is that you have too many managers who are neither good at managing people or interested in doing so -- they just get shoved into the role to fill the tree. In your case, there are no spots in the tree, but you've stepped into that role. If the decision makers like you and what you're doing, this is a great way to accelerate your career, provided that your ambitions are just to go up. If they feel as you wrote, that facilitation and management aren't as valuable as code checkins, I'd think of leaving.
posted by batter_my_heart at 12:50 AM on September 30, 2017

Team Lead, or Technical Lead, as batter_my_heart said, is the name for this role. It encompasses technical contributions, plus coordinating, leading, facilitating, but without the level of responsibility of a full-blown management position. Management would include performance appraisals, pay raise administration, formal discipline responsibilities, work assignment, issue escalation, which I haven't heard you say are being charged with. Pay for this job is typically a notch higher than the SE staff, because it requires both technical and leadership skill sets. Consider this a great opportunity to "test drive" a leadership role; if you like it, it becomes great resume material for a software management job at the next place. And if you decide it's not your cup of tea, that's worth knowing too.
posted by mama penguin at 3:05 AM on September 30, 2017

The Manager's Path, as recommended by migurski, is outstanding on this subject.
posted by asterix at 10:00 AM on September 30, 2017

« Older Directory database   |   I want my food inside a pumpkin Newer »
This thread is closed to new comments.