
Ask HN: Career advice for a developer with 10+ years experience - peacemaker
I&#x27;ve come to an interesting point in my career and would appreciate peoples opinions on what I should do next.<p>I&#x27;ve been a professional software engineer for 12 years now, the last few years and positions considered &quot;senior&quot;.  Most of my background is C++ but in my spare time the last 3 or 4 years I&#x27;ve been doing a lot of web work using PHP, Javascript, Python.<p>I recently took a break to work on my own startup which hasn&#x27;t taken off.  This will be the 3rd time I&#x27;ve quit a job to work on a business which hasn&#x27;t quite worked out.<p>It&#x27;s time to start looking for work again, however I am having trouble deciding where I should focus.  Should I stick to my tried and true (though somewhat rusty right now) C++ skills, or move on and make the commitment to web?  I don&#x27;t have much trouble picking up new skills so I&#x27;m always open to new ideas as well.<p>Anyone else been in a similar situation?<p>I have my concerns about getting too old in this industry (I&#x27;m early 30&#x27;s right now) which tends to favor new college grads.  My ultimate goal it to run my own business though I do need to pay the bills as well.<p>Overall, I feel my thoughts about what to do going round and around in circles so I&#x27;ve come here for help.  Any advice or comments people can share with me would be greatly appreciated.
======
eranation
I don't know about other places, but I'm almost 36, with about 10 years of
Java and web experience, and I keep getting more and more offers (from around
the nation) from both enterprises and startups (twitter, amazon, rackspace,
apple, google, netflix, Oracle, NCR, banks etc...).

I talked to a friend who works at Twitter (he is 37) and he told me it's not a
"college graduate world" as some depict it, he said most people he works with
are around his age (which was very encouraging for me).

Here in Atlanta there are tons of Sr. Java jobs, both enterprise and startups,
at least based on the recruiter spam I get in LinkedIn.

When you say "too old in this industry" which industry are you talking about?
SV? Web Startups (Ruby / Python / Node)? Gaming? Mobile? perhaps for these you
are right. But for the companies I listed above, or any enterprise company in
the country, your age is just about right, and your experience years are in
demand. Again, don't know about C++ specifically, but if you had 10 years of
Java, you would have easily landed multiple offers from various good companies
around the country, at least this is what me and people I talk to in the Java
community seem to experience.

I don't know if it's C++ that is different, but the "if you are 30+ then your
career is over" situation is not something I see even close to the reality at
least here in Atlanta.

Hope it encourages you a bit.

P.s. If you want to increase your spectrum of possible jobs, I recommend
learning "less cool" technologies, like Java EE 7, Spring, Hibernate, or if
you need to choose between Haskell / Go or Scala, go with Scala, it will be
perhaps less cutting edge, but will give you much more job opportunities. Also
learning Hadoop, Storm, MongoDB will make your resume look very attractive.
Also you should pick up good github projects that show you are full stack, do
some AngularJS projects, write a jQuery plugin, the jobs offers will follow (I
got more than a few solely based on some nonsense plugins I wrote in github
that look as if I know what I'm doing)

YMMV, all based on my very subjective experience here in Atlanta...

~~~
peacemaker
Thanks for the advice. When I mentioned getting too old I was referring to
startups specifically. With C++ work I know I have less to worry about in
terms of age.

I understand what you're saying about the "less cool" technologies but they
don't interest me. The whole point is to guide my career down a path that is
more enjoyable and fulfilling so doing something like that seems a step
backwards. I appreciate the advice though, thanks!

~~~
eranation
I don't think all of these are necessarily "less cool" technologies, some of
them are both very cool, in high demand, and fun to work with.

Scala is a good example I think, if you like Ruby, Erlang, Haskell, or even F#
/ C#, it might grow on you the way it did on me. Some say it's a complex
language, I don't see it as such (coming from Java) I see it as a typed Ruby,
with pattern matching copied from Haskell, and concurrency system copied from
Erlang. With 100% Java interoperabilty. Cool enough for me...

it's both fun to work with, high performance, and still considered pretty cool
in most parts. It's the only language that can be used enthusiastically by
both a bank and a SV startup (and the academia) using the same philosophy and
methodology. It's the peace maker language.

I know, Go, Haskell, Lua, Clojure, Rust, Julia, Nimrod are much more on the
hype spot, but hypes come and go, and you end up choosing what technology you
both enjoy using, and that has a job pool. For me it's Scala currently, can
change any time.

------
mojoe
If you get to a point where ageism actually becomes an issue for you, I would
suggest embedded systems engineering. With your C++ background it should be no
problem for you, and in my experience firmware engineers tend to be older and
don't have age bias like the rest of the industry. I enjoy firmware because
you get to work fairly closely with actual physical things and apply your
knowledge to an extremely wide array of real-world applications.

~~~
peacemaker
Well I have done quite a bit of embedded work in the past and I agree, I was
often the youngest software engineer on the team. I quite enjoy the work too,
but the thought of going through the whole interview process again is tiring!
Needs a lot of prep to get back into the correct mindset, especially seeing as
I've been doing a lot of web stuff recently.

------
BSousa
I'm in a similar situation (early 30's, 10+ years of development experience)
and also left a previous job to start a business that didn't work out and just
came back to work at a 'normal' job.

There is a good demand for C++ programmers in financial hubs. In Europe, this
is London. I see 20+ jobs being posted every week for senior C++ developers.
I'm guessing Wall Street will have similar requirements. Game development is
also an option, but at your age/experience, I don't recommend that industry.
Of course there are other companies that require C++, my last job was making a
portable (Mac, Linux, Windows, iOS and Android) music streaming library with
custom DRM. You will find these 'odd' jobs with C++ requirements less
frequently but can be a good option.

So, that's C++. Now about focusing on something else. It really depends on
your goals/life. If you prefer a startup type company, then yes,
node.js/ruby/Python are your best bets to get a job at those (doesn't mean
Haskell or Scala won't get you a job) but if you prefer a more enterprise
company (which there is nothing wrong, I do, since I have a small boy at home
and really value the work/life balance I get) you should probably focus on
either Java or C#. There are tons of jobs around for these technologies (in
Europe, C# seems more in demand than Java, no idea on your location).

If you want, you can also always learn Obj-C or Java(Android). Mobile
developers seem to be in hot demand right now and it can be something
completely different from what you are used to do (which can be a good or bad
thing depending on how you feel about learning)

Technologies aside, if your 10 years experience really brought you to Senior
level (I've met folks that seemed to have just repeated the same year 10
times) I don't think you will have a problem finding a Senior role in whatever
tech you choose. I started with C, moved to C++, then C#, Ruby/Rails, Obj-C.
Even though I don't have 10 years experience with each of those, I easily
found a job for senior developer (actually, I got a few interviews and got
offers from all, from Sony to a big financial firm in London and small start
upsas well.)

If you have any questions or just want to chat about your situation, shoot me
an email (email on profile).

~~~
peacemaker
Yes I've seen quite a high demand for C++ guys in New York and Chicago as well
as other places. That's really the heart of my question - should I stick to
that or move into the newer technologies you mentioned like node.js/python? I
have learned a good amount of both though no real work experience in them.

Also you mention games, well I worked in the games industry for 4 years when I
was younger! Did my time, enjoyed it, but won't go back now :)

I am completely unsuited to large enterprises. I started out my career that
way and hated it. Recently went back to a large corporation job and only
lasted 6 weeks before I had to quit.

I guess my original post wasn't so clear either. I have no problem getting
requests for interviews and the like, get loads every day. My issue is making
the choice of where to focus my career. Do I get back into C++ to earn some
good money doing something I already know? Do I truly commit to new web tech
and join a smaller startup? Or something different like freelance while
working on (yet another) business?

I'm tired of trying to make this choice because there are so many pros and
cons for each! I understand no-one can do it for me but it's nice to get other
peoples views. Thanks again.

------
avenger123
Any thoughts given to moving towards a Solution Architect role? Within the
right organization, you could be doing some hands on but mostly involved with
designing and leading the solution.

You are definitely not too old to continue to do development but it seems like
you would like to move on from that.

~~~
givehimagun
Is solution architecture the elephant graveyard of developers? I've seen this
sentiment expressed elsewhere where people graduate from being a developer
into an architect.

I don't understand it...the best architects I know remain excellent developers
writing some code. It's like graduating from the chef to become a waiter.

~~~
avenger123
I am sure you did not intend it, but the "chef to waiter" statement is such a
big disservice to what solution architect people do. Using your analogy I also
certainly don't believe that writing code equates to being the chef. I love
software development and see the tremendous value it brings but in most major
businesses its relegated as a cost centre rather than revenue generator.

I don't equate being in a solution architect role to not writing any code or
being a bad developer. It actually takes a much broader skill set to do a
solution architect's role. The best solution architects have reasonably high
communication skills, strong understanding of business drivers and are able to
articulate well to non technical people and most important see technology as
one cog in a business rather the be all and end all. These are not skills that
any typical developer will necessarily have.

The term is also abused a little bit but in major corporations it has a lot of
weight. I would also say that just like any role, there are the best and worst
people doing it.

The reason I mentioned it is that for people who still have a strong love for
technology but don't want to be relegated to being a developer when they are
much, much older (and frankly who want more advancement) the
solution/enterprise architect seems to be a good fit.

~~~
givehimagun
Chef to waiter isn't a good analogy in terms of skills. I was trying to
highlight how different the roles were and not the skillset disparity.

Hell, I'm one of them...my job title is application/solution architect and I
spend most of my time doing exactly what you said above.

I agree with what you're saying. My main point is that what I've seen (and
even heard from people I'm interviewing) is that they want to become an
architect to move away from code and graduate into another position. I think
your point of needing a broader skill set is important because in my mind,
architects are excellent at their old job, continue to do portions of that job
and also gain the other skills (communication, change management,
evangelizing)...but I don't see everyone understanding that.

------
shawnreilly
I've been in a similar situation. My advice is to work in parallel. Maintain a
steady income with minimal time investment and leave enough time on the side
to work on your Startup. The key of course is having enough time on the side
to be effective with the Startup. For many people, this is why they prefer
Freelance/Consulting. Much easier to schedule and make your own schedule. I
found Freelancing/Consulting to be too inconsistent for me personally, so I
found an 'Industry Job' that only takes up 3-4 days a Week (alternating). This
provides steady income, and leaves me 3-4 days a week to work on my Startup.
Once the Startup shows enough traction to generate funding, then I will move
to the Startup full time.

On my first Startup I made the mistake of going full time with no steady
income. In hindsight, I should have maintained a lower steady income instead
of having no steady income. With no income, I effectively put a limitation on
my ability to work the Startup full time. Unless the Startup gains traction,
you eventually run out of money and end up back at square one (or square zero
depending on the situation).

Some people may be in really good positions that afford them the opportunity
to work on their Startup full time and not have to worry about income. That's
great for them, but for everyone else, it's 90 hour work weeks.

------
hschool
I am curious why you decided to quit job to work on your startup? Were you
getting a lot of traction?

I have done something similar and learnt a great deal. The biggest lesson I
learnt is to sell before you build. If you can't get enough people excited to
buy your product don't build.

~~~
peacemaker
I'd built it up in my spare time and felt it needed my full attention to get
started. I prefer to get stuck in and give it a real go so I usually save up
money to cover the downtime.

I agree on selling before you build. I keep failing and one common themes is
not having customers before going full time. Lesson learned!

------
AznHisoka
What's the startup/idea you tried to launch?

I wouldn't worry too much about age. If anything you can move to a management
role, lay back, relax and save your mental energy for your side projects and
next big idea.

~~~
peacemaker
I've tried several over the years! I've opened bricks and mortar stores in my
local town, a dropshipping business and most recently a SaaS app. They've all
failed for various reasons though I learned a lot doing each one.

Do you really consider moving into management a relaxing role you can lay back
in? Often my managers have seem more stressed and tend to do all the boring
work and meetings. They tend to work extra hours too leaving less time for
side projects.

------
FurrBall
I have no doubt ageism is real but it does not start in the 30's. Trust me.
You have a few decades to go before ageism is your problem.

~~~
peacemaker
It's quite a common theme, especially on HN, that after 35 it becomes a lot
harder to get work in startups specifically. That's what I was referring to.

------
ghostdiver
a bit off topic question:)

Perhaps the way how you approached your own startup was wrong. Why quit job
entirely rather than develop some network of freelancers and outsource time
consuming tasks to them? It will increase costs, but also greatly reduce
overall risk.

------
martina56
30 years is just beginning, don't even bother about it Focus in your goal -
Business Become a freelancer, lot of freelancing websites are there -
elance,odesk,freelancer etc., etc., use your skills - php or js or whatever
you know, and try to get some work and pay your bills.

if you can't even get one freelancing work, then consider it as you don't have
exposure skills

if you can't complete a taken work, then you have to improve your skills

~~~
peacemaker
I do freelance work currently, it's OK, I earn a decent amount but I don't
really enjoy it.

I'd prefer to work with a startup or small company on something exciting.
Learn some new skills and possibly be part of something big.

~~~
martina56
I do agree, but he needs some backup for day to life, so he have to do some
kind of part time jobs

