Ask HN: Laid off, frustrated, looking for advice

16 points by layofflayabout ↗ HN
This is a combination of venting and looking for advice. It's a different account than my usual Hacker News, would like to be anonymous at this point since I'm looking for work.

I live in a large city in the Eastern time zone, 40+ years old, my most recent job was for 12+ years at the same place, 10+ in Java. I got laid off in May. Got my resume together, talked to some recruiters, the usual stuff. I've had a couple of nibbles, couple of interviews, but no offers so far. It seems my problem is that the assignments I was given was just regular Java coding, more back end than front end. Not much J2EE technologies, light on servlets, JSP, JSF. Also, the company didn't use Hibernate or JUnit. Basically, I don't have the fashionable skills. I have no doubt that I could pick them up quickly, but if I don't go in saying that I have actual experience with them then firms don't want to talk to me.

Here's an example of my frustration. Back in early June I sent my resume through a friend to a company they work at, they have an opening. I hear back that they're looking for someone with Google Web Toolkit experience, I don't have that, no luck. I talk to a recruiter in late July, I hear that the position at that company is still open. I could have learned GWT in six weeks, I think any decent developer, at least a decent Java developer, could have learned GWT in six weeks, but the position is still open and whatever project they want to do is stalled while they wait for the perfect candidate.

27 comments

[ 705 ms ] story [ 8780 ms ] thread
So, here I sit, trying to figure out what to do to maximize my chances. I've worked on some home projects off and on, but lately my time, and my attention, has been talking to recruiters, researching companies that I'm about to interview with, that kind of thing. I'm looking for some general advice, but it wouldn't bother me to get comments like "You should have done X, Y, Z, five years ago, but you didn't, sucks to be you" so this can be a cautionary tale for others.

Moving isn't really an option.

I consider myself a developer, programmer, whatever you want to call it, and not a "Java developer", but it's where I have the most experience, and if I went off to semi-master PHP, Ruby on Rails, or something else I'm afraid I'd be in a worse position than I am now where no one looks at me because I don't have the experience.

Some questions: So far I've been going through the recruiters, haven't really hit sending resumes directly through what I see pop up on LinkedIn, or Dice, any of those. I've sent my resume directly to companies twice, heard nothing back. For a senior developer, is going direct and trolling the career sites a way to go, or will I just get spammed and waste my time?

I've heard that hiring slows down in the summer, is that the case? Is it me or is it the season?

Would a J2EE certification help? It might not make a difference to the startup guys here on HN, but would Java experience, no J2EE experience but J2EE certifications get me in the door somewhere?

What technologies are in demand? I see J2EE (whatever that means to some people, that's a lot of technologies in there), Hibernate, JUnit, HTML/CSS/JQuery.

Do home projects & code on Github make a difference at the non-startup companies I've been talking to?

I have time on my hands, and can to "anything", but I don't know the one or two things to do to actually get me back to work.

Get off recruiters as soon as you can. They are very risk averse and follow the sage advise for bankers - 'lend money to those that dont need it'. ie if your job search is not going great to begin with its unlikely a recruiter is going to put in the effort to connect you with an opening.
Yeah, just like Facebook and Gmail, "if you're getting something for free, you're not the customer, you're the product". I'm definitely feeling like a product.

But I thought I was doing things "in the ways of my people", that posting your resume to sites like Dice etc. just gets you lots of spam from recruiters etc.

Bear in mind that I haven't looked for a job in, lets say, over 12 years, and really don't know the best way to go about it. I'm on LinkedIn, of course, I get the occasional "jobs you may be interested in", someone else mentioned indeed.com, any other suggestions for good sites?

Hang in there, things will get better! Job apps are a stochastic process, just have to keep plugging until you get through.
What would you replace recruiters with? There is certainly a hierarchy of "Best way to get a job" (from worst to best):

1. Send resume cold

2. Send resume through a recruiter

3. Get introduced through a coworker of an ex-coworker

4. Get introduced by the current hiring manager (or one of her managers)

5. Be a rockstar programmer that everybody knows (ala DHH or Zed Shaw)

What is there between two and four? Whatever it is seems like it is impacted by things like open source projects and general visibility in some community.

Couple of things between two and four

a) Meet people at local tech meetups. Really prep hard before you talk to people though.

b) Contribute bug fixes to any open source projects the company has

c) Do a survey of what skills existing holders of similar jobs have. Invest strategically to acquire those skills before applying for the job

d) Reach out to people via Linked In

Cold contacts with companies almost always fail. Unless its a small company, you will have to win at buzz-word bingo to get through those systems. And even then, it is rare to hear anything.

Hiring absolutely s,ows down in the summer. Just getting all the people who will be involved in resume reviews and interviews in the office at the same time in the summer is hard.

Can't help on the J2EE experience much. When I was hiring Java developers five years ago, it would have made no difference to me, but times may be different.

Jersey for web services. Java persistence for DB access (Hibernate is a good proxy for that). Spring for dependency injection. I haven't done web UI stuff in Java for a long time, so I can't help there.

Github-type projects can make a difference, depending on the company. Many want care; some it will be a deciding factor. It will never hurt, though. I would probably choose contributing to an existing project that has a lot of people involved. That gives you another networking opportunity with people who can see your capabilities.

Language and technology user group meetings are also a solid choice. They tend to have a small core of regulars and a larger group of some combination of job seekers and people who are hiring.

I've also found the "Who's Hiring" posts here to be useful. By far the most useful job postings I've found.

Good luck!

I have to reiterate another comment: try to avoid recruiters (especially the ones that match based on keywords). I do technical interviews for Java positions, and even though we do have an enterprise app, that yes might use Hibernate and Spring (spit!) I've never asked anything to do with that stuff in an interview.

I don't expect recruits to know that stuff or learn it on their own, because my own best efforts to learn those things on my own were pretty pathetic. Those monstrosities are best learned by seeing them in action.

In an interview, from a Java perspective, I basically want to see if I like the way you think in Java. In essence, I'm looking for the person who has read and can apply Effective Java vs the person who simply knows the syntax in and out.

I also want to see if you value the same things I value in code. I've interviewed a couple of people who knew Java, but worked for years on Java ME. They valued micro optimizations over correct and maintainable code. They would use arrays over lists, that kind of stuff. That might be right for your old job, but not for an enterprise app.

But again, all this assumes you can get your foot in the door, which I have no control over! The best way to avoid a recruiter is to have somebody refer you. Call up other people who have left your old company. They might be hiring but aren't actively reaching out to their past colleagues because they're not allowed to (the stupid "don't steal talent" clause in many of our contracts). If you approach them, they're in the clear.

What technologies are in demand? I see J2EE (whatever that means to some people, that's a lot of technologies in there), Hibernate, JUnit, HTML/CSS/JQuery.

Given that Java is one of your stronger areas, and given how much demand there is for Java developers, I'd suggest you continue to focus on Java and related technologies. In that area, you'd probably be well served to learn Spring (the core DI framework), Spring MVC, and Spring Data / JPA... make sure you have a decent knowledge of SQL (you don't need to be a DBA, but some low level SQL never hurts). Knowing the "raw" Hibernate API won't hurt, but JPA is really where it's at these days.

String knowledge of the core Java language is always good as well. Java is a pretty big language/library, but get to know the Collections APIs, the IO APIs, at least a basic understanding of threads / threading (including the java.util.concurrent package), and maybe some basic knowledge around using sockets in Java.

If you have (or can claim) that knowledge, you're in decent shape for a lot of Java oriented positions. Beyond that, knowing the low-level servlet API is still valuable, as well as some of the more popular 3rd party libraries... get to know Quartz, Lucene, Apache Camel, etc.

Learning basic administration skills around at least one Java application server (JBoss, GlassFish, Geronimo, whatever) is always good.

Learn as much as you can about Tomcat.

Knowing how to build web-services (both old style SOAP and RESTful services) is good. Look at JAX-RS and Apache Axis.

Get a handle on all of the previously mentioned tech, and you'd be pretty in demand in the Java world (unless you live somewhere really desolate, where there just isn't any demand for tech jobs!).

If you want to move onto some of the new'ish stuff that's catching on and becoming "in demand" I'd say spend some time learning Hadoop / HBase, Storm, S4, Kafka and maybe another NoSQL database like MongoDB.

Would a J2EE certification help? It might not make a difference to the startup guys here on HN, but would Java experience, no J2EE experience but J2EE certifications get me in the door somewhere?

This is always a controversial question, but my take is that "yes, certifications do help." The question is "how much do they help?" and "where do they help?" At a startup, maybe not so much... at your typical Fortune 500 $BIGCORP, they probably do help. A certification alone isn't going to get you a job if you have NO skill, but if you're competing with somebody else for 1 position, and you both have roughly the same background, and you have certification and the other guy doesn't, it might just tip the scales in your favor. BUT... if you pursue any certifications, do it right... USE the experience as an excuse to do a "deep dive" into whatever, and actually LEARN. Don't just download "brain dumps" and cram for the test. Studying for a certification test can be very useful, I learned a lot studying to get my SCJP back in the day. Doing the certification was it's own reward, even if the actual cert never helped me land a job.

If you consider yourself simply a "Java developer" then it would be in your best interest not to apply-to/join-a company that is insistent on pigeonholing the developers into certain technologies. Avoid recruiters since all they do is keyword matching between a job requirement and a resume. Why were you not comfortable with a regular/back-end Java coding interview? What would you have preferred to be asked?

Are there any meetups in your city? Start networking. If your a good developers, then there is no need to just join any company for a paycheck. Join the right company.

The key question I ask anyone I interview is "how do you keep current"? Not everyone needs to spend their free time on some open-source project, but a proactive interest in your profession is a requirement IMHO. Get a free account on AWS and/or Google App Engine. Just create something.

Your skills have stagnated over the years. Do not get into this scenario again.

Stagnated...maybe, maybe not. Over the past few years I've taken an interest in functional programming and machine learning, lately doing some programming in Clojure and looking at Scala. I've been "keeping current" with these technologies, but none of that is J2EE, Hibernate, JUnit, JQuery. We all love to hate Larry Ellison but I'm starting to think he was right when he said that the computer industry is more fashion-driven than women's fashion.

I will be creating something, but right now I feel like I have to do something that uses the fashion instead of something I love. A project motivated by fear instead of love? I cringed while I typed that, but there will come a time when the savings runs out and the family will still need to be fed.

Here's my take:

What do you want to do? What are you passionate about. I understand you've got bills to pay (possibly a family to support), but look at this situation as an opportunity to work on something you'll love doing.

It sounds like (from your description), that you would classify yourself as rather specialized at a set of Java technologies that were related to performing your previous job. You know java, that means you can pick up C# really really quickly. Honestly, you should be able to pick up a lot of other programming languages rather quickly just by the virtue of knowing one. Even if you don't want to invest the time into learning something new to a certain level of comfort, at least get some familiarity with a few others so you can at least talk to them.

I've had the benefit of working at a research lab for the last 8 years, which lets me work on new projects and new technologies constantly. I've also been involved in the hiring process a number of times, so here's what I look for: passion, attitude and willingness to learn.

Regarding your question about personal projects and Github, I think that's absolutely a perfect opportunity to either showcase your abilities, or at least demonstrate some creativity, collaborative development ability, productivity (I got X done in Y days/weeks/months) as well as coding ability. I think anything you can point to and say "I did that" and allow them to critically review it would be a big benefit.

Check out www.indeed.com (if you haven't already) to keep tabs on relevant job openings.

First, figure out which technologies are best to know in your market, then start learning them AND create a small (but quality) public product that will showcase what you can do.

Having public work on your resume makes a big difference and it's what you should lead with. I know how it can be when everything you're paid to produce is used behind closed doors. It makes it really tough to demonstrate your chops.

NotifyWire.com (shutdown, but I can still demo) and PuppyShowdown.com in my portfolio get's me in the door pretty much anywhere I need. It shows you know how to produce a product, it's a conversation piece, it makes everything else on your resume more believable, and it separates you from 99% of other applicants.

Regarding time. Don't waste it on your job search. You need less than 2 hours a day to effectively look for a job (that leaves you 8-10 on re-tooling). Just like it takes very little energy to float in water, when people panic they flail about trying desperately to stay on the surface and then drown.

Just went to puppyshowdown, looks nice.

What's a good way to list a "personal" site on a resume?

Do you put the source code anywhere for employers to peruse? And I mean this in the nicest way, but you know how some things are developed nowadays, how much is original original and how much is using example code? Does that make a difference when explaining your site?

How do you host puppyshowdown? For a personal project site I figure I can a) use my VPS, but it's only 512M of memory and I'd probably do a J2EE-based site, b) get a Linode or something, but too expensive for the memory, c) get a static IP at my home internet and leave a computer up, or d) figure out an Amazon EC2 site.

>Do you put the source code anywhere for employers to peruse?

Much of the front end stuff isn't obfuscation (thus open), but the back-end stuff is closed sourced and all done in .NET. I can speak very intelligently to how it's done, the challenges I faced, and the solutions I came up with. If they ask nice, I can show them code as it's all in a private GitHub repo.

>and how much is using example code? I take advantage of various libraries, but these are mostly resume builders, like jQuery, KnockoutJS, SugarJS, Massive, etc... The code that make it all work is completely custom.

>How do you host puppyshowdown? I have a dedicated server at a hosting company, but a VPS would also work fine...512MB is a bit low though.

There was just an HN post on portfolio sites: http://news.ycombinator.com/item?id=4284663. One of the things mentioned in the articles was a portfolio blog, mainly for coders where they talk about the technical stuff they did behind the scenes while showing some pictures of the final products.
How do you, I guess, "bring up" that you created the sites? I have a few sites too that I've made but as well as being unaccustomed to applying for jobs, usually "my list of projects is here" doesn't cut it. And I never know how to bring it up in a cover letter either.

Either I'm coming across wrong or (sort of unlikely) they just aren't too great of an example.

Since you say you don't have much recent work with J2EE technologies, I would suggest getting a REST lib and learning to develop RESTful services, demand is high for back-end REST developers and you can be spitting out JSON in a day or two and other formats shortly there after. If you have Java experience and can stand up a REST service, you will find something.
Get your friend to set up a call with the manager (or even just to give you their phone number) for the team with a vacancy and try talk to him/her for ten minutes. If their main worry is lack of particular knowledge is the problem you could potentially offer your first couple of weeks for free or expenses only basis to show them what you can do.

If decide just to do an independent project for experience I would try something substantially different and/or demo able. Maybe a mobile app or a web service. It sounds like your recent experience is narrow so any substantially different project will make you appear.

Most of all do something that you think is cool and you can get excited about. Enthusiasm is worth a lot even before the project is complete and it will help you see the project through.

What kind of domain/industry have your worked for? I have friends in financial industry in the East coast and could possibly refer for Java positions. But they prefer financial experience.
Eastern time zone, eh? Are you open to the possibility of a job in either Durham, NC or Chicago, IL? A job that could involve the need to travel up to 50% of the time? If something like that could work for you, email me a resume, my dayjob employer (Open Software Integrators) could very well be interested.

Otherwise, my only real advice is: start an open source project, or at least a side-project of some sort, even if it's closed/proprietary. Use the fashionable / cutting-edge stuff, even if you might not otherwise feel the need. Use it as a platform to learn the stuff you think you're lacking. Side projects / OSS work do "count* with (at least some) companies. And the kind of companies who do "count" that stuff are probably the more attractive ones to work for anyway.

Unfortunately, that is more of a "long game" strategy, and doesn't do much to help you in the short-term.

Don't rule out Android development as a very marketable skill you could pick up as a Java developer.

The catch is that you will need to do your first apps on your own, just so you can get your foot in the door as a mobile app developer - but get them published on Google Play (the former Android Market), and you'll be set.

All you need to get started is Eclipse, and at least one Android device to test on. Two would be great, especially if one runs 2.3 and the other runs 4.0 or 4.1.

FWIW, if you are interested in learning Hibernate, I wrote a couple of books on Hibernate, and the publisher sent me stacks of them that clutter up my closet. Happy to send one over to you.

Thanks for the input. I think I have something approaching a plan.

Continue to have the recruiters do their recruiter thing, doesn't hurt. Start sending out resumes myself, from LinkedIn, from indeed.com, etc. Start getting some kind of J2EE certification, when I get something put it on the resume. Pick a project using the technologies I think I need, when I get something put it on the resume. Wait for summer to be over and employment picks up (?)

When I get a job I'll update, link back to this post.

Can you tell us what city you're in, or at least be a little more specific? I know you're main point was to vent and get advice, but a lot of times these posts can result in actual job leads and offers.
(comment deleted)
I'll go ahead and say Atlanta. If you're familiar with the area I live up I-75 in a suburb, and with traffic being the way it is I'm trying to stay from I-75 down to I-285, then over as far as the Perimeter Mall/Alpharetta area. Duluth, Norcross, downtown and Buckhead are a bit far, quality-of-life wise and I'm not that desparate yet.