
Don't Get Stuck - brendt_gd
https://stitcher.io/blog/dont-get-stuck
======
pknerd
I tell you one thing. If you think that a company will be offering you new
tech after every X months or Y years then you are wrong. Tech world does not
like that. Think of the investment a company does to bring in a tech stack. It
is not all about downloading a new tech, it is about finding and hiring
resources. If they all start changing tech based on wish list then they never
can progress. I remember something my ex Boss said years back: We have not
married with companies hence we should not try to change company as per our
will.

In order to fulfill what you want you should work on side projects. Side
projects are great way to vent out tech frustration. Working on PHP and got
bored? Try python at home. Tired of using bootstrap? Try Tailwind. Feel angry
seeing monolith CRUD apps? Try Docker at home and start making micro-services.
You have endless options. You can also put code on Github to improve your
resume.

~~~
golergka
Rewriting existing code in a new shiny language just to keep employees happy
is a pretty stupid thing, sure. But when you're just solving problems and
maintaining old software, there's a lot to be gained from thoughtful, measured
inclusion of new tech, transition to new libraries and such. This is technical
investment in the company's future: improving developer's velocity and code's
performance, reduce bug rate and overall quality of the software.

At least in my personal experience: moving from SVN to git, moving development
from C++ to JS (and company was making simple mobile games that are never CPU-
bound) and then gradually adopting Typescript, migrating a commercial
application from MSSQL to Postgres (saving a significant amount of $$ in
license while actually improving performance), and many, many smaller
refactorings, improvements and new shiny libraries — all resulted in direct
positive consequences for the business.

If the company never adopts any new tech ever, it's a sign that it's lost its
way.

~~~
dls2016
> If the company never adopts any new tech ever, it's a sign that it's lost
> its way.

So you're telling me I wasted last week installing the VB6 IDE on Windows
Server 2016?

------
underwater
On the flip side, if you're jumping between companies regularly to stay fresh
on tech, you might not actually be progressing in the way you think you are. A
decade later you might still be a $latest_technology developer with 2-3 years
of marketable experience.

The changes that have been most meaningful to my career are thing like
becoming a tech lead and moving into engineering management. And these have
happened when I've become embedded into a company.

~~~
high_derivative
Regarding management, it's a bootstrapping issue: The main requirement for an
engineering management position is management experience. The easiest way to
get it is to stay at one place for 3-4 years. The move based on that
experience.

~~~
w1ntermute
There are really three categories of management:

* Line management: are you willing to be the man and promulgate the party line? You can be mostly apolitical in this role.

* Middle management: are you willing to be the pawn of a specific member or two of senior management and do their bidding (which probably isn’t fully aligned with the party line)?

* Senior management: do you know how to intelligently break the rules in order to stand out from the crowd of middle managers? This could be by developing a broad following within the lower levels of the company through self-promotion, through cultivating specific relationships with the CEO and/or board, or by (in rare cases) delivering on highly visible and truly remarkable results for the company.

~~~
melvinroest
> or by (in rare cases) delivering on highly visible and truly remarkable
> results for the company.

One example I know from the 80's: you're a director of a factory in some
South-American country that produces something. It's making a loss of a few
million dollars per year, and everyone at the parent company for which this
factory is simply a small business unit thinks it will amount to nothing.

In two years, you've turned the situation around and are profitable with 1
million dollars per year.

The company promotes you to your next role and your successor shows how
difficult your challenge was, as it's losing a few million dollars per year
again.

The trick in this case: be competent, and become friends with the local South-
American director, as upon arrival you realize that the company you're running
is actually owned 50% by the company you work for. The other 50% is owned by
some South-American company and the whole reason it loses money is because
they cannot connect with the South-American director.

True story, can't disclose sources, but anyone who has seen the 80's might
know similar stories.

That was then though.

------
blitz_skull
Fuck, man. I felt like I just read my own blog post. I've been contemplating
leaving for a long time, but I feel like somehow I'm the problem—like I can do
something to fix this. I've got this chronic resistance to believe it's anyone
else's problem which USUALLY serves me well and keeps me honest. Sometimes
though it just makes me stay longer than I should.

I feel so stagnant. My company has been bug-fixing non-stop for 6 months now.
It's insanity.

~~~
outtatime
This goes against prevailing SV ideology, but man, it's just a job. Don't ruin
your health or wellbeing for a company that would fire you in a heartbeat if
it made economic or political sense.

Commit to your family, your friends, your hobbies, and charity. Don't commit
so hard to a job, because ultimately it's a business transaction. Companies
_will_ take advantage of your good will if you let them. Don't give them that
opportunity. You owe them nothing beyond what you agreed to in your employment
contract.

~~~
blitz_skull
Yeah, you've got a good point. I've been trying to focus on stressing less
recently especially over my job.

I'm just a super type-A, "wanna make an impact" kinda guy and I know this
sounds dumb but I feel like I'm letting mental weakness "win" if I don't tough
it out. Just writing it out, I know it sounds nonsensical.

I guess I just want to make sure things are good and thoroughly fucked before
I bail, you know? ha

------
gumby
Brings to mind a famous quote attributed to Thomas J Watson (the real creator
of IBM):

Watson: we should be investing in ongoing training in new skills for our
staff.

VP: But what if we train them and they leave?

Watson: What if we don’t and they don’t?

~~~
jaden
Thanks for sharing the source of this quote. I've heard it numerous times but
never knew it was from Thomas J. Watson.

~~~
gumby
Thanks, though I must admit I wasn’t there myself so can’t testify as to the
veracity of my attribution! But it does sound like something he might have
said.

I didn’t look it up on quote investigator though.
[https://quoteinvestigator.com/](https://quoteinvestigator.com/)

------
rawfan
I know so many people who are in this exact position. Trying to change the
practices of their companies for the better but never getting anywhere.

A client is paying for a refactor but the manager says "we don't have time to
write tests, the client is not paying for that" (when indeed they are in the
end).

~~~
Cthulhu_
The client IS paying for that; the trick is to not end up in a situation where
a refactor becomes a rewrite but part of your daily job. A refactoring
shouldn't take more than a couple of days; if it does, it's too big. Same with
testing.

The client does not pay for refactorings or testing, and your manager
shouldn't be made aware of it because it's part of your regular job. If they
have so much insight in your day job that they start complaining, they're
micro-managing and probably redundant (if they have the time / energy to look
as closely at you / your team's work).

------
_davebennett
Hmmm....but what if you are "stuck" in a job that pays decently (enough to
cover needs) extremely flexible hours and unlimited vacation and awesome work
life balance (sometimes less than 40 per week). But the actual work is
pointless and boring. Is that time for a change?

Some people say yes, but often these are the people who are the "high
achieving" tech workaholics who love to go home and code for fun.

Other people say no, and these are often the people who don't really care much
about work and just look at it to a means to an end.

How would you know?

~~~
vorpalhex
Only you know the right balance for you. That might be a dream job, or it
might be miserable.

I would say if you are in that situation and enjoy it, you should still be
learning and investing in yourself outside of work whether that's learning
code or practicing your baking. Learning and struggling with new material is
basically a muscle and needs to be an ongoing practice, even if it's not
directly related to your day to day.

~~~
Viliam1234
Some people prefer to learn at work. Some people prefer to learn in their free
time.

If you are the type that learns at work, then having nothing to learn at your
work means you have nothing to learn. If you are the type that learns at home,
not coming home exhausted from your work means you can learn more.

------
instance
How do you define being stuck? If you have great coworkers that you're able to
learn from, but the company itself is struggling, are you stuck?

Maybe there are certain stages in a failing company. Stage I: A few great
coworkers, product struggling. Stage II: Great coworkers begin leaving, you're
still fighting. Stage III: The position OP describes in his post.

~~~
brendt_gd
There definitely are stages before being stuck. I worked for three and a half
years in that company, and only felt stuck for the last year.

I went to all three stages you describe, feels very familiar.

------
incog_nit0
This resonates.

I spent 8 years at the same startup - it graduated from chaotic and exciting
to staid and dysfunctional.

I moved pretty high up so was in a position where I could introduce modern
practises like agile, but I could never get management to mandate dev staff to
do simple things like have a daily standup. The meetings would invariably
drift onto other topics and go from a 15 minute standup to an hour long
discussion about _everything_ going on in the company where the CEO would get
involved and try and hash things out.

As you can imagine we'd end up doing these at most once a week which became
incredibly frustrating trying to get everyone on the same page.

On top of that the code base was stuck on XML, JSP/JSTLs, XMPP, Java 7 and
Adobe Flex based APIs and libraries. The whole world was moving onto mobile
apps, ES5/6, REST-JSON, Websockets, WebRTC and we were stuck using archaic
stuff like XMLPullParsers, Flash Remoting and SOAP.

Those first 4 years were valuable lessons on what to do and I grew as an
engineer, but those last 4 years were definitely lessons on what _not_ to do.
But you grow comfortable.

I think being comfortable is a dangerous place to be.

To quote Jim Rohn I think you have to embrace discomfort and ask yourself
'What am I becoming?' rather than 'What am I getting?' and ensure that you're
growing. You don't want one year's experience times 8 - you want 8 years of
growth.

~~~
brendt_gd
> 'What am I becoming?' rather than 'What am I getting?'

That's a great insight. Thanks for sharing!

Hope you're in a better place now!

------
wayneftw
If you want to continually stay up to date on new tech and have many
opportunities to use it in new projects, go work for a consulting firm.

At a consulting firm, many of your projects will be new projects that you will
have a hand in architecting. You won't be doing a lot of maintenance
programming.

I'm sure some firms do take over maintenance projects, but at least that has
not been my experience and it seems like something you can find out ahead of
time.

------
non-entity
I feel perpetually stuck. Ive tried the whole job hopping thing and generally
just end up in the same place with a little better pay.

------
Minor49er
This echoes a sentiment I saw recently on a career review site:

One thing that is pretty common across companies is the possibility of being
pigeonholed. If you take responsibility for some aspect of the job and do it
well, your contributions and successes can go unnoticed. It reminds me of the
scene from Futurama where Bender meets God, who tells him, "When you do things
right, people won't be sure you've done anything at all." I've seen it happen
to colleagues and have had it happen to myself. This isn't just a software
developer's problem, though. It's ubiquitous.

Spotted on this page: [https://www.pathviz.com/careers/software-
engineer?review_id=...](https://www.pathviz.com/careers/software-
engineer?review_id=5GO2jb7JeYdE)

This seems pretty true for anyone who I've seen leave a job. They will say
that they were offered more pay somewhere, but usually it's because they
haven't been doing what they wanted to be doing for some time at their current
jobs.

~~~
ryanprosser
Hey Guys, I'm one of the founders of PathViz. We saw your post on google
alerts. If either of you have feedback for our site, we'd love to hear about
it :) - ryan@pathviz.com

------
marcus_holmes
I have a rule: if I've been doing the same job for two years, it's time to
leave.

Especially in this industry, getting comfortable can be disastrous. There's no
job security, ever, but it's remarkably easy to fool oneself into thinking
there is. And then suddenly it's gone, and a hostile job market with skills 5
years out of date.

~~~
rubidium
Not great general advice. Totally agree on no job security... but there’s
other ways to succeed then jump ship every 2 years. That’s a great way to have
2 years experience 10 times.

Sounds like you haven’t found an employer who invests in your continued skills
and development. A good employer/manager will give at least 10% and often 20%
for skill dev.

With the resume of leaving every 2 years, many recruiters and hiring managers
for companies that do invest in their employees would avoid you. So you’ll
never find good employers either.

~~~
marcus_holmes
It's not jumping ship. Getting a new role in the same company, or moving to a
different team in the same company, are both valid "not the same job".

YMMV, but I've found this to be true. Mind you, it's been a decade since I've
had to apply it. Freelancing doesn't count, and I'm making an exemption for
C-level roles in startups, because they're never the same month to month
anyway ;)

------
TacoSteemers
It would be helpful to the reader if the text was easier to see.

A story displayed in light gray on white is difficult to read.

~~~
grumple
Looks black to me. Could you have a settings issue?

~~~
karmakaze
It's a lightish medium grey for me--probably one one of those greys that can
look too light or just fine depending on display gamma and ambient lighting.

~~~
vorpalhex
For me, text comes back as #333 in inspector which is near black (and visually
looks black). Firefox v79 on MacOS, uBlock + pihole.

------
makach
If you were about to get more responsibility and obviously are climbint the
corporate ladder, isn't that growth? Is not this the opportunity to be able to
influence change in your organisation and be able to tackle all the issues in
which you find at fault?

~~~
teraku
I thought the same. He mentioned advocating for change and it not bearing any
fruits, and also mentions past attempts by previous co-workers, but this seems
to be a culture issue (there also seem to be many colleagues who don't seem to
have a problem with the slowness of change), which means you need to reach a
higher responsibility position first, before substantial change can occur
(through you).

But at the same time, with the current employee market being what it is, if
you are unhappy there is _no need_ to play the grind game to help a company
grow, unless you are really attached to it.

------
alltakendamned
There will always be fewer people at the top of the pyramid than there are at
the base. As such, there will always be too few opportunities for everyone to
grow and/or be promoted, especially not within a specific timeframe of a few
years.

A company is not an ever-flowing pipeline up that pyramid, the job still needs
doing. So it's normal that indeed people will leave to explore other
opportunities in other places.

I'm not certain this can be resolved in smaller or medium-sized companies. The
amount of opportunities tends to grow with the size of the company.

------
anonymous_dev
Last year I realized I was stuck and underpaid after 4 years the same agency.
I found a new agency with a better salary but then my agency offered me a
significant raise and I've decided to remain. Now after about a year I still
feel stuck, but at least I have a decent salary. It's hard to decide to move
again with a wife and a son depending on me.

------
rehman
Staying abreast with tech stack is one thing and staying abreast with
practices is one thing. Stacks will come and go, all it matters is your
fundamentals, skills, practices that you work on day in and out. If that's
good then stacks are just a matter of tools. If you keep on changing just for
the matter of stacks, then you might be left behind on growing vertically on a
particular niche.

------
Dork1234
It seems like people agree 3-4 year old tech isn't bad enough to leave your
job over, but what is the limit for tech age before you think you should jump
ship: 8 Years, 13 Years, 21 years or even more? If you are 60 years old that
number might be higher, but if you have a long career ahead putting an extra
few years in an older tech seems to hurt your career more than it might help
you pay the bills.

