Live data from Hacker News

Ask HN: I am young teen. I have questions regarding software development careers

news.ycombinator.com

21–23 of 23 posts

Re: Ask HN: I am young teen. I have questions regarding software development careers

#21
~10 years experience in software development, everything from huge government telecoms projects to my own startup. I now work in robotics/computer vision research. Here's my advice:

Programming is not hard. Don't focus on software development as a career path.

Software is only a tool, and most production software is badly written because the customer doesn't care about design patterns, only whether the product works or not. Despite the prevailing opinion on HN, learning to program is not difficult and a reasonable person with technical training in any field can pick it up in a few months from scratch. The current high salaries paid for writing CRUD apps (and almost everything is CRUD apps no matter how much JavaScript you put in front of it) won't last as the barrier to entry is ever lower. Very little that could be called 'engineering' gets done in a software context.

Once you've learned two programming languages with very different concepts (e.g. C++/Scala), you'll be able to pick up any language/programming concept easily. Don't waste time learning the flavor-of-the-month JavaScript framework, it's a waste of mental energy and if you ever need to know it you'll be able to learn everything anyone actually uses it for in a week or two of concentrated study. For the time you spent learning React in and out, you could have taught yourself rocket propulsion,

Focus instead on developing the patience needed to learn complex ideas in depth, alongside a broad range of soft skills.

If you go to university, pick a scientific or engineering discipline - ECE will keep you close to computing, but ME is a good choice too. Physics or Mathematics are both also good choices. Don't major in CS unless you really care about the mathematical foundations of computing (which have nothing to do with most programming you're ever likely to encounter). In my experience it's very easy to teach a physicist to program, but the converse is not true.

Mentors are everywhere, but they're not necessarily going to mentor you 1:1. Professors at university are mentors. Coworkers are mentors. Anyone smarter than you that you have the opportunity to spend time with is a mentor. There's no need to codify the relationship. To get the most out of these relationships, spend time figuring out the most important, concrete things you'd like to learn and pose them as questions.

To develop leadership skills, you need to first master self-examination. This is very difficult and takes a lot of mental fortitude, and life experience you may not have had the chance to develop yet. This is a journey I'm still on so I don't have much useful advice, other than that.

Re: Ask HN: I am young teen. I have questions regarding software development careers

#22
post #21

~10 years experience in software development, everything from huge government telecoms projects to my own startup. I now work in robotics/computer vision research. Here's my advice: Programming is not hard. Don't focus on software development as a career path. Software is only a tool, and most production software is badly written because the customer doesn't care about design patterns, only whether the product works…

Excellent advice! Wish I could upvote it twice.

> it's very easy to teach a physicist to program, but the converse is not true.

Programming isn't everything, and there are a lot of subjects out there that will make you a better programmer.

Re: Ask HN: I am young teen. I have questions regarding software development careers

#23
If your still in your teens, keep your options open. You love programming? Fantastic! But software developers aren't the only professionals who write code. Lots of scientists do too - physicists, chemists, biologists - and of course engineers in all manner of fields. Don't disregard an interesting career path just because it doesn't say "software developer" on the cover.

As for "leadership position": that's a privilege you've gotta earn. Leadership isn't about technical prowess, it's about experience. Actually, it isn't even about technology, but about people. You always lead people; and doing that well takes a very different skill set to writing pretty code. If you want to lead, don't become one of those nerds who is incapable of normal human interaction. You're going to need other people, learn to get along with them now.

You sound like somebody with a lot of potential, and I like that you're being proactive here. I wish you the very best of luck!

Post reply on HN