
Ask HN: Quitting my job - GeorgeMac
Dear HN,<p>I am currently developing Java web applications for a company in the publishing sector. However, I really want to pursue a career in the Ruby sector of web development. I have got to grips with a lot of rails development in my spare time. However, I am starting to feel that my day job is interfering with my self development. Currently my company is caught up in a lot of politics with clients and dissatisfaction with development processes. Some of us really believe that moving away from Java to languages like Ruby, Python or Javascript makes the most logical sense. However, efforts are thwarted by senior managements opinions. Opinions which aren&#x27;t justified with any kind of evidence. It&#x27;s just driven by their own personal taste &#x2F; a lack of understanding of the current industry. We don&#x27;t build enterprise applications. We build relatively simple applications, that are virtually static sites. However, we are bogged down by the massive dependency management, spring configuration and painful AOP style framework issues. This coupled with supporting sites that are up to 10 years old.<p>I digress! I am thinking of quitting, regardless of currently having the next job lined up. What are your thoughts? I only have one and a half years of experience under my belt. However, I am constantly researching the web development scene and feel armed for a job as a ruby or even python web development. Is this move worth the risk?<p>Cheers HN!
======
wikwocket
Others have addressed your questions about Java & Ruby, so let me handle the
job angle.

If you are _ever_ unsatisfied with your job or your self-development, by all
means move on. Life is short, and everyone deserves fulfilling and rewarding
work. This is my advice regardless of profession; although it applies double
for you, as this is _literally_ the best job market we have ever seen for good
people with technical skills.

That said, do not quit without having another job lined up if you only have a
year or two of experience. Look around, read up on career searching, call some
companies, figure out what you want, and then pursue it. Get a company
interested in you and negotiate for the best possible offer. When you have an
offer, give your two weeks notice.

------
mswen
Local job search on indeed.com Java Developer - 218 Ruby Developer - 28 Python
Developer - 24

If your local job environment is analogous to mine, I would suggest that you
pursue a dual track.

Route 1: Keep developing your Java skills - even if that means you need to
push yourself beyond your current employer's "simple applications." The nearly
10X difference in job availability suggests that having solid Java skills is
income security even if it isn't very sexy.

Route 2: Like a couple of others have said, you should continue to learn one
or more newer languages on the side and really develop your side projects into
something that is an impressive demo of your overall development skills.

If you are hoping to get into more of a start-up environment, Ruby should
probably be your focus on route 2. If you are into science and/or data you
like go with Python.

This advice assumes that you have the bandwidth in your life to pursue both
routes simultaneously.

~~~
GeorgeMac
I think you're right. I particularly need to see some of my outside of work
projects to some level of completion. Beef up the Github account. Haha and
like you say, Java skills are highly sort after. I shouldn't disregard that.

Cheers

------
VLM
Interesting you want to go ruby. Scala and Java are semi-interoperable. As is
Clojure. At least they all tolerate the JVM and JVM related infrastructure (to
various levels). Some of the frameworks interoperate more than the others.
Ruby is a bigger leap than some other possible leaps.

Perhaps senior mgmt is micromanaging WRT language selection. Could be your
boss micromanaging and he's throwing senior mgmt under the bus. Or maybe
you're correct. Anyway the point is you need to make sure its merely the
specific language you don't like. If you move to a new ruby using employer
where everyone has to dress the same way and hold their coffee cup the same
way, you might be really unhappy if its actually the micromanaging you don't
like rather than mere language choice.

Finally aside from any micromanagement issue there's work style. I prefer
nearly consultative, professional environments where deliverables matter and
you don't tell someone 5 levels lower on the hierarchy how to tie their shoes.
However its a perfectly valid business choice to run a place the other way,
and have an unprofessional, general laborer, non-craftsman type environment.
You need to explore your thoughts on this too, again, see above, if you think
your dream job is ruby and they don't micromanage one particular aspect of
your job, you may none the less hate the new job if what you really dislike
about the current job is the general laborer / code monkey / unprofessional
unskilled labor workplace.

Other people have already mentioned that language doesn't matter as much as
architecture / design. A extremely rigid view of language likely implies an
extremely rigid view of arch / design, yet another axis to think about. If
your current employer is extremely rigid about language you may have not
considered what it would be like to work at a place with more freedom, or even
just a different set of equally rigid arch/design outlooks.

Interviews are a two way street and with little experience you need to learn
more about a potential new employer than they need to learn about you
especially WRT the above.

Good Luck and all that.

~~~
GeorgeMac
I think you're hitting the nail on the head with this not really being related
to an issue with the language choice. I think I just came to a decision I
don't want to develop for the web in Java. I kind of lead with the language
argument, but really my issue is with mgmt and processes. Mostly with promises
from mgmt, regarding a positive change in the way we do things. However, this
has been a long long time coming. I have started to get to a bit of a too
little too late predicament. This has been fuelled by my mentors who have all
left my company for the same reasons. Leaving me without a mentor figure,
which is something I am really striving to obtain again. I would like a mentor
at least until my development confidence has been made more concrete. As
mentioned above, my development career is still early days.

What you have said about architecture and design also rings true! Many other
employees in my company are crying out for the development a more maintainable
and stable product, coupled with selling this product to clients expectations.
Which we seem to struggle to get right time and time again.

I will definitely take you advice as well with the interview process. I need
to ground my wants from a future employer.

Really appreciate the detailed response! Helps put in to perspective what my
priorities should be!

Cheers!

~~~
VLM
So reading between the lines the most experienced longest term dev has only 18
months experience. There's nothing wrong with any individual dev personally
only having 18 months experience, obviously every dev with 19 or more months
experience passed thru the same state. The disaster is solely at the
company/mgmt level where you're now the senior technical lead.

One aspect of a company circling the drain, is you're better off finding
another place on your own terms before it goes under, apparently soon. Once it
crashes, if you're still there, you've gotta settle for anything just to pay
the bills. Its hard to say how long you've got before they close, but assuming
your last paycheck didn't bounce its longer than you'd have if you wait till
the bitter end.

Getting stuck at a better run company that none the less is technologically a
clone, complete with pure java etc is still going to be much better.

As a guy who had his 18 months in 1982, I'm just saying I've seen a lot of
companies swirl around the drain and its not sounding good for the company
regardless of all this "I have lost the java faith" or whatever.

Good luck w/ the future etc

------
stratigos
"However, efforts are thwarted by senior managements opinions. Opinions which
aren't justified with any kind of evidence. It's just driven by their own
personal taste / a lack of understanding of the current industry."

this seems like a very common issue these days. it seems like people in this
industry reach a certain age and then cease to evolve and refuse to do
anything new, which seems logically out of sorts in an ever-evolving field.

while its somewhat a mystery to me now, i can say its great inspiration for
myself to not end up that way 10-15 years from now.

------
arunitc
Overtime, its not the language you code that matters. Application
architecture, design, database skills etc do. All this comes from experience,
building large applications. I understand you may not have the opportunity in
your current company to build those. You can start building small projects in
your personal time.

You are just 1.5 years in the industry. Taking such risks early is not
advisable. Don't be impatient, keep learning. For example, you can redesign
and build the 10 year old sites in a new language or in Java itself.

~~~
GeorgeMac
It's interesting you say that! I have considered at least re building our demo
product in Rails. Maybe this is a chance to at least show off to my own
company that RoR would provide us with less headaches. I also completely agree
about the patience side of things. I think my patience wore a bit thin today.
I think I just thought I would use HN to vent my anger! haha. Thank you for
the advice!

Cheers

~~~
tostitos1979
You may also want to consider newer web dev technology on the JVM. My
background ... did Java EE when it first came out. Went to grad school. Did
lots of python and rapid web dev for projects. Was forced to use Java in
current gig. First, I hated it. Then, I realized it is a bit complicated. Some
parts of Java are crap. If you use Java 7, some of those headaches go away.
Also, I learned about different web dev frameworks on top of Java (Spring MVC,
Play! framework). These make a big difference in my opinion. Finally, there
are JVM-based technologies that get you into the "modern" era: Scala and
Groovy. My team used groovy like Java and it was a mess. We ended up giving up
on a large code base that we developed in Groovy because it was declared as
unmaintainable. I came in on this team towards the tail end of the end of
groovy days and am glad. Anyways ... long story short, Java is not going away
any day soon.

------
amuresan
If you know RoR is what you want to do then go for it, but prepare yourself
before. Here are a few points to consider: \- how's the RoR job market in your
area? are there openings for entry level? \- to some extent you can compensate
lack of production experience with personal projects (maybe build something in
RoR on github) or by contributing (either with software like bug fixes /
features or by getting involved in the RoR community)

good luck!

~~~
GeorgeMac
Hey there,

Thank you for the advice. I do need to prioritise my development of open
source projects outside of work. I have some RoR projects to work on. So I
think I just need to push their priority to top of my list! Thank you mate!

