
Ask HN: How do you know a career in software is not for you? - zaneyard
I&#x27;ve been working for the same place for about 2.5 years and also have another ~year at an internship in another place.<p>I enjoy the problem solving aspect of working on software, but I&#x27;m finding that I&#x27;m barely utilizing my abilities and time here. This is certainly an issue that I&#x27;m trying to resolve.<p>However, I think what I&#x27;m having the most issue with is that I don&#x27;t really feel like I&#x27;m serving anyone. I really like working with people to help solve issues, but I don&#x27;t get that feeling here at all. The only problems I get to solve are the problems I feel like we make for ourselves (environment instability, lack of funding for maintenence, people not testing their changes, etc). I just feel like my job is to clean up a pile of trash that the business wants to put minimal time into. It feels so overwhelming to be paving a new sidewalk on a bridge that has supports falling apart.<p>I&#x27;m also considering the impact that the lack of social and physical activity has on my happiness. I spend time with people and exercise outside of work, but I don&#x27;t want every day to just be excited to leave work.<p>How do I manage this? Am I just in the wrong company? Or the wrong career path?<p>Can anyone else relate and share how you&#x27;ve dealt with this? I&#x27;m not really sure where else to discuss this sort of thing.
======
itamarst
Probably just the wrong company. Bad management can make any career awful.

And yes, there are lots of bad companies. But there are also good companies. I
have worked at companies where people were very careful to test their
software, and where programmers were valued.

Before giving up based on a very small sample size, try finding a new job or
two. [https://www.keyvalues.com/culture-
queries](https://www.keyvalues.com/culture-queries) is a good set of questions
to ask during interviews to find the things you care about.

~~~
zaneyard
Thank you. I wasn't trying to make it sound like I am applying my experiences
to the entire industry, I'm just trying to reason about what issues are about
me, what issues are about my company, and what issues are about my career
path.

------
rossdavidh
I have seen situations much like what you describe, and also others where I
much enjoyed working. Not all software jobs are like that (although many are).

When you are not able to just leave, I find it helps emotionally to engage my
analytical self on the problem. Keep a journal (at home, not at work) about
what is going on, and try to understand it as well as you can.

Why is upper management paying you to "clean up a pile of trash"? Is it their
business model? The fact that they just want to IPO or sell the company soon?
A lack of understanding of software at the very top? Is there any of that
which you could learn to recognize at the job interview stage, moving forward,
to improve your odds of ending up at a similar place in the future?

Look at their recruitment efforts, their QA process, their way of organizing
sprints (or whatever they use), etc. There is a lot to learn about how to make
good software, and good software organizations, by analyzing a bad one.

Of course, if you can get a job elsewhere now, do that. But in the meantime,
you may feel better about the time spent if you are learning more than just
"this place is no good". The knowledge learned will serve you well later.

~~~
zaneyard
I have definitely been thinking about this a lot, however, it's difficult to
know what to do when this is the only long term job I've ever had, and the
first time I've really had a career.

I don't think the company is looking to sell; it feels like the top is just
not concerned with reliability and most of our funding goes into new feature
development, which in turn makes things less stable.

Identifying what's wrong is probably the most difficult part for me. It feels
like a systematic failure that I can't affect.

~~~
rossdavidh
Right, it's not at all unusual that you can't affect it. In any large
organization, if you're not one of the top few, you usually cannot, by which I
really mean you may not, because the things that need to change you're not
allowed to touch.

But, it's not time wasted, if you analyze how it works. What happens when good
suggestions are made? What is it about the business that makes the leaders
unconcerned with reliability? Sometimes it's that the wrong metrics are being
looked at (e.g. new customers, not looking at attrition rate). Sometimes it's
that the people who can sign the checks for a sale are not the ones who use
it, so new features (in theory) make a bigger difference to the bottom line
than real-world reliability. Sometimes it's that there are too many levels of
management between the top and the developers. It's an interesting problem to
look at as a feedback loop, from reality/users to management, and figure out
where the signal is getting lost or drowned out.

But, in the meantime, start looking for new jobs. Also, when interviewing for
new jobs, try to find a way to talk about this which gets the point across
about why you are dissatisfied, that does not sound so negative that you come
across as a negative person. A diplomatic way of phrasing this may be
important in a job interview, not a thing to try to come up with on the spot.

~~~
zaneyard
Part of me wonders if I need to rewire how I think about this. Like I realize
that there are things outside of my control but deep down I don't accept it,
or something like that. Maybe it would help to get out and have conversations
like these more often with peers. I'll look around on meetup to see if I can
connect with people; I don't really have any friends in tech that I can talk
to other than my co-workers.

------
cbanek
Sadly, I think this is normal. I also find that after about 2 years, I start
itching for a new challenge. You learn the most at a new job, new role, new
team, just because everything is new. After a while, you learn a lot about
your company, where things are, what has likely gone wrong, etc. This gets
boring pretty fast. Being in a role long term is a totally different feeling
than job hopping and building your resume. I don't think either is wrong, but
they are very different.

Plus, if you're competent, your management chain may have problems giving you
more work as you get faster, or promoted to the right level fast enough. If
you really like your company, maybe switch teams? If not, switch companies?
You're likely to get a salary bump, and probably harder work because you'll
maybe get brought in at a higher level.

~~~
zaneyard
I find that I reach that half-life at a company too. After I sweep up the
things that are in my control I start noticing all the other problems that are
hard for me to affect and then I get complacent. I think I probably need a
change of scenery. I have a 2 week vacation to Japan coming up so I think that
will be a good time to clear my head and really get a chance to digest what is
going on. Thanks for sharing your perspective with me, it helps a lot.

~~~
cbanek
That sounds amazing, I have always wanted to visit Japan! A change of scenery,
and especially international travel I've found to be a great palette cleanser.
Have a great trip and try to not think about work!

~~~
zaneyard
Thanks! I'm really excited; everyone I've talked to that has been there hypes
it up a lot. I will definitely not be thinking about work haha.

------
davismwfl
Ahhh, welcome to software engineering.

While partially joking this is a real issue and sadly is common in our
software. Software is the way most things in life function these days, yet
those of us on the inside see that software is generally poorly put together
and then held together by hamstrung people because of funding or
mismanagement. Some companies are better than others, but all companies need
to make compromises. What I have seen is when the compromises line up with
your value system (whatever that might be) then you are way happier at work
daily and want to do more generally. When the compromises are anti your
personal value system for too long you will dread being there or going to
work. There will always be some percentage of decisions you disagree with, so
I wouldn't take it as you bolt if you disagree with a few things.

I've been in software for over 20 years, and that has been the repeated
process since even before I started. And even as a founder I realized this is
how engineers (and most educated intelligent people) work (value system
alignment) and while we can always improve, you need to find the balance that
works for you. Most problems in software are problems of compromise, e.g. we
hacked X feature to get Y done and now have 12 new problems to solve, but now
we have Z needs and have to compromise somewhere else too. It is almost always
a game of tradeoffs, and that is ok to some degree.

I love the idea that if you are not happy doing what you are doing for too
many days in a row you need to change what you are doing. I usually think of
that in slightly longer time periods given software schedules, but I think it
is a good core idea. If you aren't happy and you feel like you have learned
what you can at an opportunity then move to the next. Granted, I am not saying
job hop every year, nor am I advocating taking off just cause things aren't
going your way, but you have to evaluate your mental and physical health with
where you are and where you are going. After 2.5-3 years seems like you have a
fair reason to potentially move on if it isn't making you happy at this point.

~~~
zaneyard
I have definitely internalized the idea that it's all just tradeoffs. I think
I value delivering quality software and it's hard to feel like I'm doing that
when I see so many production outages and most of my interaction with co-
workers is people telling me something is broken. I get that stuff happens
sometimes, but we can't seem to keep a test environment stable. Managers are
definitely aware of the issue, but I feel like it keeps getting worse. I can't
hold back a tidal wave alone.

Thank you for sharing your perspective.

