Hacker News new | ask | show | jobs
by enkiv2 3338 days ago
If you don't have ten years of experience with at least five very-distinct languages (i.e., C & C++ only count once, & Java and C# only count once), you're not really a developer yet -- just an apprentice.

Sorry to say, there's no way to cut the gordian knot there: you're going to have to wait until you gain the necessary experience before you're a benefit rather than a liability.

If it's any consolation, most people with entry level / junior software engineer jobs are in the same boat, & there are whole companies that are essentially doomed because of a monoculture of people who haven't yet reached minimum competence. If you're surrounded by peers that know twelve languages & have been working as a dev for twenty years, then you're in a much better place than most of your cohort.

2 comments

I respectfully disagree with everything you said here. Firstly, you are speaking in vast generalizations about what being a "developer" means. You don't need 10 years of experience with 5 distinct languages to be effective or not a liability. That's bullshit.

I am curious - what kind of development are you referring to here? What kind of things do you think people need 10 years of experience with multiple languages to be effective at?

OP - don't listen to this guy. Focus on writing clean, simple, non-abstract code that reads like a book. Make sure your code reads well and is written with performance taken into consideration and you'll be fine.

To answer the original question - common things I have seen from bad developers are the following:

1) Over complicating/engineering solutions to simple problems. 2) Not using readily available libraries that solve 99% of the problems you'll run into. 3) Naming methods and variables abstract things that don't accurately explain what they're for. 4) Not asking co-workers for help/domain knowledge before they start coding.

In defense of the person you replied to, I had the original question framed around my situation more but edited it to be more generic. Thank you for the information!
I'm also going to respectfully disagree. While exposure to a few different languages is not a negative, it also doesn't equal experience. Everyone coming coming out of school has a few languages on their resume'. IMO, experience is not the tools (languages) used - experience is the problems solved.

I can't remember working with any bad developers but the qualities of the good developers I've worked with included: humility, a desire to learn and most importantly, a concern for the next guy who has to work with the code.