
Ask HN: Is any senior dev reasonably happy with their job? - taway_1212
Is any senior dev reasonably happy with their job (as opposed to it being a tedious grind for money)? If so, what do you do and what are your working conditions?
======
kstrauser
I love mine. I've been here for two years and I'm still waiting for the other
shoe to drop; it continues not to.

I'm a senior backend engineer in a healthcare startup, but I think the single
biggest determining factor to why this place is so awesome is that my
coworkers genuinely, complete respect each other. That manifests in lots of
ways:

\- Arguing and infighting is nonexistent. When Joe proposes something and Jane
disagrees, it's on a professional, technical level. Joe knows this and
responds in kind. Agreements are made and consensus reached.

\- Sometimes we make mistakes, but we all know that it's because a smart
person acted on perhaps incomplete information, not because they're
incompetent or untrustworthy. We have actual blameless post-mortems to figure
out what happened and how to prevent it, and then we move on.

\- If you want vacation, you take vacation. We know you're not a slacker who's
trying to get away with working as little as possible.

\- If I have a question about a management decision, I ask the CEO to explain
it. He makes time to meet with me and we discuss it. There's _never_ any
"because I said so". There've been times when I think I might have made a
different decision (or maybe not; he has more information about it than I do),
but I've always been 100% convinced that the decision was reasonable and
justifiable.

There are literally no hiring requirements more important than "treats others
with respect". If you're an asshole genius, don't bother applying because you
won't fit in at all here. Those people would wreck our corporate culture so we
avoid them like the plague. No one is so much better than my awesome coworkers
that it'd be worthwhile.

~~~
Benjammer
How do you maintain the "treat others with respect, keep it professional"
culture without getting into a position where some team members become
sensitive to any amount of criticism, and the focus becomes more about not
upsetting people rather than genuinely caring to provide kind but constructive
feedback and move forward?

Basically, how to you strengthen and guide this part of it:

>When Joe proposes something and Jane disagrees, it's on a professional,
technical level. Joe knows this and responds in kind.

~~~
gwbas1c
Either you need to work on how you deliver the message, or your manager needs
to handle the other team members as difficult.

(Assuming that you're not rejecting pull requests with "this code sucks,")
It's time to escalate the problem with management. Otherwise, you need to plan
to spend more time mentoring, and/or find another strong member of the team to
split the mentoring with.

------
kenbolton
I work from home for a profitable business-to-business startup servicing the
payments underwriting industry. I did not know such an industry existed before
working on this project, and the job came through my alumni network on
LinkedIn. I just started my fifth year with this organization. My
responsibilities include everything engineering; everyone else focuses sales.

I've met one of the three co-founders twice, first for an interview and second
for a weekend with his family. All three co-founders join me five days a week
for a brief standup/scrum and one day each week we include a sales and
strategy update.

They pay in the range of my market value and have steadily increased my equity
share of the enterprise. I supplement that income by teaching sea kayak
technique and rescue year-round and snowboard instruction in the winter.

I try to put in at least four hours of work every day, including weekends, and
balance that with four hours of year-round kayaking, hiking, house-work,
seasonal snow-sports, or some other physical activity.

I do this "job" to keep my brain sharp and hope to continue well past the
point of typical retirement. The same applies for my non-"job" activities. If
I did not need to worry about saving for retirement, I would probably still do
this. The joy comes from solving problems, not from stacking cash.

Become the low-key hero your co-workers need.

p.s. I started kayaking seriously twelve years ago because I would see these
people in their 70s surfing big waves in 16' boats. "That's what I want to be
when I grow up, that or retired!"

~~~
chuck32
"I try to put in at least four hours of work every day, including weekends,
and balance that with four hours of year-round kayaking, hiking, house-work,
seasonal snow-sports, or some other physical activity."

Well done for achieving work-life balance.

~~~
kenbolton
Appreciate the sentiment, but gotta admit that I feel like I am still pretty
far from this achievement. I suspect that balance is a goal that will remain
perpetually just out of reach, and I am fine with continuing to work on it! To
that point, I started skateboarding last week in an effort to improve balance.
Rodney Mullen is my new hero.

~~~
ardme
I would recommend slack-lining as well if you are looking to improve balance.
I also think it is safer than skateboarding too in terms of joint health and
all of that.

~~~
kenbolton
I have a slack-line but get very little opportunity to use it. I'll start
keeping it in the vehicle so I can bring it on kayak expeditions–adequate
clothes-line and camp couch–and on the off chance I find a spot to use it.

I am looking to increase the impact, not reduce it. I know that I need more
bone-rattling in my life and can't justify the purchase of a Juvent.
Skateboarding provides benefits similar to that of a Juvent, plus I might
learn how to fall (and skate).

------
shortoncash
The best job I've ever had is about 10% interesting and 90% horrible grind.
I've come to believe the secret to getting something out of a career is
learning to love the grind.

Incidentally, that 10/90 ratio happens to dominate everything else worth
pursuing also. Sports in particular. You get that initial ramp up high and
then when you hit the part with smaller and smaller gains, that's where
"learning to love the grind" kicks in. It's much harder than it sounds, too!

~~~
ChemicalWarfare
right on. one of the reasons folks who jump ship too often look suspect
resume-wise. not always the case but those frequent short gigs look like the
person is prone to bailing after the ramp-up honeymoon is over and it's time
to get sh1t done.

~~~
kstrauser
Before my current job, I'd gone through a few 6-months or 1-year jobs (after
spending 8 years at my previous place). For me, at least, it wasn't so much
"we're no longer in the honeymoon phase" as "wow, this really just isn't a
good fit". I see it kind of like getting out of a dead-end relationship: why
drag it out if you know it's not going to work? I think it's better to
recognize the disconnect and get out quickly while everyone can part as
friends.

------
unpythonic
I've been a programmer for 30 years, and I could reasonably be considered to
be a senior dev.

Yes, I'm very happy with my job. I work at a company which cares deeply about
solving hard problems well, and that care translates into good working
conditions, great work/life balance, support from management for engineering
concerns, and a very nice benefits package. There is also a focus on having
separate promotion tracks for managers vs. more technically inclined people.

There have been jobs where I have either tired of the novelty of the problems,
changes in management, changes in company policy, etc., but at that point I
find a new job in a better company and continue to find happiness.

If you're not happy where you are, and you are considered a senior dev, then
take responsibility for yourself and find a position that you enjoy. If you're
locked into a company because of golden handcuffs, lack of local resources, or
family obligations, then find activities outside of work that provide what
you're missing.

~~~
spike021
If you don't mind me asking some questions:

How do you feel about working in this industry? Have you moved jobs a lot?

The reason I ask is my parents have been "working" or in their adulthood as
parents/slightly before having children for roughly 30 years and for the most
part have kept the same jobs. So as a new software engineer fresh out of
school, they find the idea of needing to switch jobs for higher pay, new
challenges, etc. to be a bit unbelievable and disagree that I should
eventually do that.

~~~
cableshaft
It's a different world nowadays. Switching jobs every 1-3 years is more the
norm now than being a lifer (for most industries, not just software dev).
They're probably coming from the perspective of the time they lived in, and
don't realize that the world has changed quickly around them over the decades.
And the younger you are, the more expected it is.

My parents are the same way.

------
chrisbennet
Super happy senior developer/consultant. Now I work for myself in an office
out in the country but I've had lots of normal dev jobs. Lots of work variety,
this year I've worked on; WPF/C# app for laser welding, C++/OpenGL/graphics
for radar, and C++/OpenCV/computer vision for tracking the spin of golf balls.
I'm going kayaking this afternoon after I check in some changes. It wasn't
always this good but I've always been happy to go in to work at the companies
I worked for. [1] _Life it too short to work someplace that makes you unhappy
when you could be working someplace where you actually enjoy going in to work
every day._ [2]

By your question I suspect what you _really_ want to know is how to be a happy
senior developer. I'm not in the "web world" so it might not be applicable but
here is an approach that has worked for me:

1) Work for small or tiny companies. A tiny company doesn't have many "dark
surfaces" for incompetent/lazy/"political climber" types to grow in. When
there are only 4 people rowing the boat you can tell pretty quick if someone
isn't pulling their oar. Large enough to have an HR department? Probably too
big.

2) Work on new code. I've almost never worked on code older than a year that I
didn't write. You know who needs developers to write green field code? New,
tiny companies, that's who. Startups are small but you they aren't the only
small companies.

3) Work with nice people that are smarter than you. Working with people
smarter than I am has always been a given for me...

4) Try contracting, direct if possible.

[1] I've been doing this for 30+ years.

[2] Not sure if this applies to women. :-( My wife is also a developer and it
kills me how much harder working life is for her simply because she's female.

~~~
gwbas1c
> I'm not in the "web world" so it might not be applicable but here is an
> approach that has worked for me

I've found that anything interesting is more than just writing a generic
website or a generic web service.

------
hangonhn
I love my job even though it's the hardest job I've ever had in terms of hours
worked and learning curve. I worked 8 years at a big corporation where I was
fairly high up and was paid a really nice salary along with RSUs but the last
3 to 4 years there was just miserable for me. Based on my current happiness
and contrasted with my previous unhappiness, I think the reasons are:

1\. My work see the light of day. My efforts matter. I don't mind working hard
as long as it is not wasted. At large corporations, projects, even big ones,
are often scrapped for reasons that aren't anything related to the the
technical work. I get it but it still sucks and it really makes me not want to
try hard. Having effort and outcome being correlated with each other is a huge
motivator.

2\. I know what's going on but am never the smartest person in the room.
Working with people at least as smart and skilled as I am is amazing. I don't
have to worry about other people and their work. We can just divide up the
work and be reasonably sure things will get done in a reasonable way. If not,
talk it over and fix it.

3\. I have a lot of responsibility and independence and we attack the problem.
I've had the opportunity to learn and experiment with so much in just two
years and those experiments are actually getting deployed. Having a hand in
pushing things like Docker, Clojure, etc. at my company is amazing. I remember
all the silly meetings at my old job over the choice of language for QA that
ended up exactly where we started versus now when we decided to try out a new
tool written in Clojure even though none of us ever used Clojure. We are all
smart enough engineers, why should a new language stop us from solving the
problem.

------
GuiA
All the senior devs I've worked with who seemed truly happy at work were that
way because they spent plenty of time with their family, volunteering, and
just doing stuff outside of work that was meaningful to them. None of them
poured everything they had in their job, tying it with their identity.

People in that latter category tended to be more brilliant in general (for
example a problem comes up and they immediately know of 3 different ways to
solve it, half a day later they tested all 3 for that particular problem, half
a day later a first implementation is up and running, while it'd take most
other people a full week to reach the first step), but they seemed to have way
more up and downs with their mood and happiness and general.

Obviously this is a generalization from my ~10 years or so in professional dev
environments.

As a senior dev who tends to identify more with the second category in terms
of happiness fluctuations, I've been trying to be more like people I've known
in the first category.

~~~
jshaqaw
This is not confined to tech. When I look at senior people in all the fields
my friends and family work in, you have a small core group who - bless them -
live for the work and thrive on it, a good chunk of very successful people who
like it enough and realize the fullness of life is not entirely in the job.

------
scarecrowbob
Well, I dunno what "senior" is, but we do agency-style work for clients and my
boss bills me that way.

I'm on a very small team where I'm the technical lead and I code every day. I
make whatever tech decisions I want.

I have a salary that's not large, but I also work a 30 hour week. 100% remote
and nobody cares when those 30-ish hours are as long as I get stuff done and
make some rare client meetings.

I trust my boss, who does the sales for the company, and generally she sells
these really great projects with a lot of padding so there is always plenty of
slack (praise bob).

Sometimes the projects are kind of dumb, but I'm still learning new things and
they are large enough in scope that I can dive into some fun stuff.

So with all that, working is not a bad deal for me at all... it's something
that I spend a whole lot of time doing, but it's also fun and pays well and I
still have time for my 16-year-old, a girlfriend, and playing some music with
friends.

~~~
bradgnar
want to work there

------
jcadam
Not really. Not enough challenging/interesting work to go around it seems. My
current job doesn't even really involve 'developing' anything. Mostly going to
meetings and writing documentation.

I've tried hunting for a new job, but there's definitely a glut of senior
software engineers these days. This current job, whilst boring as hell, pays
well and doesn't demand overly long hours from me. And since I have my side
project(s) to serve as a creative outlet to satisfy my 'coding' urges, I've
stopped caring about finding other work for the time being.

------
braveheart1723
Interesting question.

About 5 years into my career I was asking myself the same thing. At the time I
must have gone through 10 - 15 full time gigs, either quitting or getting
fired so I knew something was not right. I could do the work but definitely
never saw myself in there for the long run so quickly lost the passion for it.

Co workers were always friendly and sociable, but with very different
interests, I'd also never imagine myself as them in 5 to 10 years. Sounds
judgmental but it's important to sometimes look at who's around you as you
more often than not end becoming them. Looking back, it was a lot to do with
me not being that confident in what I wanted to do or become and a little
lost.

I started working remotely which gave me so much more freedom as far as
traveling and training in other things that I've really enjoyed the last 3
years. To the point where if I'm not coding for a couple of weeks - I really
miss it.

I'm grateful everyday for the amount of freedom and money you can make
programming when you compare it to SOOO many dead end careers out there.

TLDR; Keep asking questions, keep trying different roles, hang out with people
doing jobs in completely different industries: service industry, sales... keep
at it, something will click :D

------
swalsh
If you're not happy, and your job feels like a grind... it's probably time to
get out. Life's too short to hate what you do for 8 hours a day. You should
identify what motivates you, and try to pursue that. For example, I found I
was not really motivated by technical challenges anymore. I found I was more
interested in the business. I cared about the problem my code solved, why the
code was needed, and who it helped. At the time I was a "Lead", but the path I
was on only lead to me being pigeoned holed into more "technical" positions.
They let me pick how to build it, but I was never exposed to the why we're
building it (more than the context required to build it). I found consulting
as a way to expose myself more to the business. Fortunately, I had built a
great network, and that gave me a start. I've only been doing it for about 8
months, but I'm far happier with this than when I was just another "senior
engineer".

~~~
hartator
Isn't consulting still working on the how and not the why, just a different
way to be paid?

~~~
reboog711
I've been consulting for 17 years...

Even though the company is just me, I approach it as a business and do a mix
of hourly projects and fixed fee projects. At any given time I have 1-3
projects going on at once.

What I work on depends primarily on the client. With some clients it is all
about the 'why' and we do real business analysis. These are massively
rewarding.

Other clients treat me like someone who "Shovels poop for money" and just want
me to do whatever they say. These are not as rewarding--but are often
profitable.

------
d--b
Very happy. I was working at a firm full time for about 7 years. I told them I
wanted more time to be with my family, develop personal projects and live
abroad, and that I would really love to continue working part time and
remotely. So now I consult part time for them from abroad. I took a pay cut,
but I'm still very decently paid.

~~~
kenbolton
This! Be honest and open about your needs, goals, and desires.

------
analog31
I'm a senior level systems engineer and architect at an F500. I'm happy. We're
not a pure software company, but make equipment that's supported by software.
We're in the midwest, so the pace of life isn't quite as hectic -- I'm not
getting rich, but I have great work-life balance and live in a town with good
schools, etc.

I love programming, and do quite a lot of it. But watching what the software
devs do all day, I'm not sure I'd enjoy the drudgery.

What keeps me out of the drudge zone is the fact that my work is not
predictable -- I get the weird problems that are not fully within any
particular skill set. So it can't be planned or managed.

------
symmitchry
I was a mechanical engineer for many years... And hated every job I had. I
woke up every day dreading my work. I honestly believed that I would hate work
forever.

Now I'm a coder (actually now I'm a manager, so less coding, but still a bit)
and I really love my job. I wish I could work more. I love coming to work, I
love my team, and we really have a ton of fun.

Our office is really chill but I have my own desire to be productive and write
high-quality code. My teammates are great.

So my advice is: Don't give up. Like relationships, you can't stop searching
for the right now, but because all the others have been terrible so far. Good
jobs _are_ out there!

------
maxxxxx
I have been doing this for more than 20 years and I am kind of tired of it.
Maybe I am glorifying the past but when I started there was much less
bureaucracy and management overhead. I/we got presented with a problem and
then went off to figure it out. Now there are so many non-technical people
micromanaging, evaluating, reporting, withholding information, counting story
points and other stuff. Maybe SW dev just has become too much mainstream. I
think I long for the wild-west days of SW dev :-)

~~~
zimpenfish
> Now there are so many non-technical people micromanaging, evaluating,
> reporting, withholding information, counting story points and other stuff.

Ah, the Scourge Of Agile. I yearn for the day people see it as the
micromanaging abomination it is and we can get back to treating developers
like adults, not naughty children.

------
thehardsphere
I'm reasonably happy. I don't know if I meet your definition of "senior dev"
but the word "Senior" appears in my job title.

I work for a biometrics software company. We all work about 40 hours a week
under normal conditions, more if and when circumstances warrant it. Our boss
was previously on the team and promoted from within; he is also excellent at
shielding us from distractions from above if we do not need to know about
them. I am paid slightly less than the median for a person of my relative
experience, but that is mainly because of the drift that happens when you work
at the same company for a number of years, and I don't mind much because the
environment is quite nice. Everyone is polite, professional, and is a valuable
part of achieving our company's objectives (we employ less than 100 people).
Despite working primarily on a product that has been around a long time, I am
always doing something where I am learning something new. I get 3 weeks of
vacation every year (but rarely use all of it) that I can use pretty much
whenever.

If you are actually somewhat decent at writing software and live in or near a
competitive market, I would encourage your to be as selective as possible when
it comes to "working conditions", but watch out for gimmicks that are designed
to keep you in the office, like free meals. I'd also stay away from any
companies where excessive overtime is commonplace (it's a sign of poor
management), or where there are lots of attempts to portray the company as
more than just a company (it can be a sign that they will not respect
boundaries between their desired identity for you and your individual will).

------
nhtoaenstnsoae
I'm fairly happy as a senior dev. This particular week is stressful because
we're nearing a release. But outside of the extra hours I'm working for the
next 2 weeks, I don't usually have to work more than 40/wk. I work on very
interesting problems with very smart and interesting people. I make a lot of
money and have great benefits. I live in a nice place and am close to my work,
which is only possible because they compensate me well. I definitely want to
change some things about my current situation, so I'm working on that.

I've been at my current job for 12 years. 6 years ago I was really annoyed
with work. It seemed like we were in permanent maintenance mode, so there
wasn't much fun stuff to work on, and I didn't have a lot of say in what I was
doing or where it was going. I went and interviewed with competitors and a few
startups. I was offered a job at a startup, but when I looked at the work, it
was hardly any better than what we were doing, the product was doomed to fail
(and it did), and I would have been doing longer hours for fewer benefits and
working with people who were far less senior than me but who had very large
egos. I ended up turning it down and instead talking to my manager about why I
was unhappy. As new projects came along, I got to do newer things that were
more interesting and came to love it again.

It's not all good. We currently have one or two people in our upper management
who are not good at their jobs and who don't seem to care about their
employees' well-being. But we're working on fixing that and the downsides are
not nearly bad enough to consider leaving again. If they get worse, I may
decide it's time to jump ship, but there's a good chance they'll get better
and I'm actively working on making that happen.

------
dacracot
34 years of experience... I am reasonably happy with my compensation and
work/life balance. I am not reasonably happy with what I do 40 hours a week,
primarily because I do not control the high level objectives, nor the
resources to make it happen. This is why they pay me, to do their bidding. I'm
ok with it because it allows me to make my time outside of work, fulfilling
and meaningful.

------
SFJulie
I have 19 managers, none of them understanding the job at hand and a family I
can't see because of 3h/day commutation.

Else the job is fine.

Ho! And I inherited a fork of 500k slocc using 5 languages and so much
frameworks I can't count them anymore.

I am the janitor of a huge codebase with a management under acid, but it pays
enough for me to not sleep under the bridge, so I guess I am happy.

~~~
gwbas1c
You're probably on a sinking ship and don't even realize it. If it's really
that bad, I suggest quitting in with the smallest amount of notice you can
give and hopping on the job market tomorrow.

Remember to thoroughly vhet your future employer. Job interviews are a two-way
street. There's nothing wrong with finishing an interview and then telling the
employment agency that you don't want to continue the interview. I did that a
few times while looking.

------
gwbas1c
I've learned to appreciate my job for what it is, and for the benefits that it
provides in comparison to other jobs that I could easily obtain.

It took me almost a decade of bouncing from a few different jobs, and failing
miserably at trying to run my own company, before I found my current job.

My job isn't perfect, but no job is. I'm board and eager to move to another
opportunity, but that opportunity will be chosen very carefully. I've already
made the mistake of moving too fast, and I'm perfectly happy to sit in my
current job for another 2-3 years if I need to.

Why? I interviewed at another company about a year ago; and for reasons that
were hard to explain, it just didn't seem to be as good as my current job. A
few months after they offered me a position, they were acquired and the team
now has quite a bit of stress. Changing jobs wouldn't have improved much.

~~~
le-mark
> I've learned to appreciate my job for what it is, and for the benefits that
> it provides in comparison to other jobs that I could easily obtain.

This is what it boils down to, imo. Currently I'm working on a horrendous
legacy code base with a very low performing team, in a very low performing
organization. Over the years I've learned what matters to me, and this job has
what I need: good pay, time off, and I can come and go as I please so long as
I'm here for "core" hours (ie on location, not remote). The last part is
another way to say my boss is cool. He's new too, although he's been here
longer than I have. We're both dismayed at the do nothing culture, and
terrible code here.

That's about all anyone can ask for IME, find out what matters to you and
optimize for that. When I go home I don't give a thought for work, I get to
concentrate on my family 100%.

~~~
gwbas1c
> > I've learned to appreciate my job for what it is, and for the benefits
> that it provides in comparison to other jobs that I could easily obtain.

Part of why it works out so well for me is that I have enough clout to avoid
things I don't want to do. IE, I don't want to be a manager. When my manager,
(who's titled a director,) decided that I was going to become a manager, it
basically went like this:

Me: "I don't want to be a manager."

My boss, "You're not going to be a manager, you're just going to do
[everything that a manager does]. You need to grow in your career."

Me: "That sounds like you want me to be a manager."

I saw right through that and made it pretty clear that I wasn't going to be a
manager, and I wasn't going to be tricked into being a manager without the
title of manager. If I was going to be forced to be a manager, I was going to
take that job I mentioned in my original post. It helped that I missed a
meeting with upper management because a job interview ran long.

In part, it's not that I don't want to be a manager, I don't want to be a
manager for the company I work for. I know too much of the code to be hands-
off, and I'm remote. The culture is far too interrupt-driven in our office to
be a remote manager.

------
donatj
I was for about four years. Then something changed, the tone of the office
changed. There's a drive to get poor quality work out the door fast rather
than high quality work when it's ready (which is why I took this job to begin
with).

~~~
AnimalMuppet
Yeah. Jobs and teams are good... until they're not. No good situation is
forever. But if you've got management sanity, good coworkers, and interesting
work, don't casually walk away - until it changes.

------
mattnewport
Yes, but mostly because I co-founded a company working in an area I was
interested in and enthusiastic about (VR). I work remote from home (the
company is currently fully remote) and we all have pretty flexible working
conditions.

------
bontaq
Yep, I like my job. I work at a healthcare startup and have been here since
near the beginning.

Working conditions are nice, I'm on one of many small-ish teams (usually 5-10
people including management), 9-5 work doesn't raise eyebrows, I get to work
with decent technology (clojure/scala/typescript), my colleagues are clever,
and I've gotten much better at programming.

One of the best parts is that though it may be a bit circuitous, I can usually
see exactly who I'm helping and how.

------
nuclearghost
I'm not sure exactly what you mean by senior, but my title says I'm senior (6
years exp, 3 in this job). I would say I'm beyond reasonably happy. I found a
good company with senior management I can believe in and co-workers who are
strong technically and easy to work with. Although the industry, advertising,
is no one's favorite, our mission is to make it suck less while supporting
people who create real journalistic value which I can get behind.

------
notacoward
This is a really good question. Yes, I'll get to an answer (skip to the
bullets at the end if you want), but first I'll set the scene a little. Junior
devs who chafe under others' direction/decisions/criticism often think
everything will get better once they're senior themselves. I know I did. It
reminds me a bit of kids/teenagers who think being out of school and/or head
of a household is going to be a great liberating experience. Again, I did. But
the reality in both cases is addressed by this cartoon - a copy of which lives
on our fridge.

[http://www.fowllanguagecomics.com/homework-bonus-
panel/](http://www.fowllanguagecomics.com/homework-bonus-panel/)

So yes, being a senior dev often means spending _way_ too much time doing all
of the less-fun things on a project. Planning and scheduling, maintaining all
of the infrastructure others depend on, interfacing with other groups, etc.
Spending half of every day reviewing (and having to argue about) others' code
is even more annoying than having your own code reviewed once in a while.
Being the "debugger of last resort" is satisfying once you're done, but can be
intensely frustrating while you're in it.

This list of gripes suggests the solution: one must _actively_ resist all of
these extra roles. Relentlessly. Yes, you'll be dragged into doing all that
stuff anyway, but if what you enjoy is designing and coding then you have to
_protect_ that time. With all that said, here are some of the keys for me:

* Find fun projects and good people to work with. Always important, but ever more so as you become more senior.

* Work from home (at least part of the time - for me it's practically always)

* Explicitly block out time for the different activities. Set aside a morning for code reviews, an afternoon for your own coding, etc. For me, working in a time zone three hours ahead of most of my peers is a _huge_ plus here.

* Require meetings to be scheduled well in advance. Decline with prejudice when people get too casual about this. Make it clear every once in a while that you're doing this as a matter of policy/principle. To soften that, show interest in the _content_ e.g. by providing offline feedback.

* In general, say "no" a lot. Be polite, compromise or defer when you need to, but don't be a pushover and don't be passive-aggressive.

* Accept that you might get dinged for all these things. You might get fewer promotions or smaller raises, maybe even a bad review. OTOH, the increased focus on what you're best at and most passionate about might _improve_ your performance compared to being pulled in seven different directions.

~~~
gwbas1c
Can't agree more!

Most important, if you get dinged in a review, escalate. There's nothing like
the company founder going to your boss and and saying that the thing you're
getting dinged for is not your job.

------
mej10
I don't find my job to be a tedious grind at all. I enjoy working as part of a
team (specifically my current one) and helping to make everyone around me and
the business successful.

I have had to shift around the day-to-day tasks I work on occasionally, but
finding and working on high leverage parts of our technology and business is
pretty rewarding.

------
SoCool
I am a senior dev and work in a fortune 10 company. I only do it for money. I
used to very excited about software, but after 10 years of development have
realized, only few get to have fun at software and also get paid for it.

------
megamindbrian
Please first define "happy"? Is it bursting with joy to step foot in the door
everyday? Yes, I step feet in an out various times throughout the doors in the
office and I am happy to peel my eyes off of the computer screen.

------
scarlac
Yes. Senior Freelance Full Stack Engineer at the moment. ~18 years of coding,
~15 years of professional work. Been in startups, both my own and as an
employee.

------
alexnewman
I am a contractor who has a few startup exits under my belt. I hack and work
to help and further man. I don't need the cash and don't have a family.

~~~
madamelic
So you're a contractor who just jumps between startups? How do you get started
with this? Just a network with lots of entrepreneurs I presume? :)

------
bherms
Yep! Love my job. It can be annoying sometimes but in general I work with
amazing people, which is probably the most important piece of the puzzle.

------
zimpenfish
No but that's why I'm a contractor because the £££ offset the misery.

------
wolco
Of course writing code is always fun. Meetings can be fun when you ignore the
meeting and keep working.

------
snambi
Who is a senior dev?

~~~
taway_1212
I had in mind someone who's been in at least a couple companies (megacorps,
startups, something in between in terms of size, tech companies but also
regular "boring" businesses like a bank), has some tech lead experience (or is
at least very influential in his team). In other words, someone who had enough
opportunity to see what flavors of the job are available and what it really
entails.

As for the purpose, I mostly included it in my question to specifically not
get answers from less experienced people, who may still be in their honeymoon
period.

The background here is that I am in a job that will allow me to retire in 5
years (and nothing else pays even close in my country) but is so mind-
bogglingly nonsensical that I wonder if it would make sense to change it to
something satisfying even if it having to work much longer.

