Live data from Hacker News

Ask HN: What is your advice to someone who is starting out in software industry?

news.ycombinator.com

11–20 of 70 posts

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#11
Assuming you have already landed a first job and are starting out working in the industry. If you don't have a first job yet, ignore this. :-)

A few technical ones that come to mind:

- Try out different programming languages. This enriches your toolbox and can make you see programming in a new way. You can't know if e.g Python is a great language when you have nothing to compare it to.

- Get familiar with a cloud provider's offerings. Doesn't really matter which one since they are comparable, although I'd pick either Azure or AWS, these cover most of the market.

- Get familiar with the debugging tools.

- Learn VCS. Sounds obvious but if my experience is anything to go by, far from everyone is comfortable with git.

And some non-technical bits of advice:

- Ask for help if you get stuck. If you're a junior, people expect you to get stuck at some point, don't be scared to ask for help. Better to just ask than to waste a few days.

- If you interact directly with customers, learn to speak _their_ language. Be able to explain technical things to a non-technical audience.

- Related to the above, practice soft skills. They don't come naturally, like any other skill you can practice them though.

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#12
Read extensively, practice your craft & don't lose your focus.

These books will help you day-to-day with your general programming knowledge...

> Philosophy of Software Design https://www.amazon.com/Philosophy-Software-Design-John-Ouste...

> The Pragmatic Programmer https://www.amazon.com/Pragmatic-Programmer-Journeyman-Maste...

> Clean Code https://www.amazon.com/Clean-Code-Handbook-Software-Craftsma...

> Mythical Man-Month https://www.amazon.com/Mythical-Man-Month-Anniversary-Softwa...

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#13

Assuming you have already landed a first job and are starting out working in the industry. If you don't have a first job yet, ignore this. :-) A few technical ones that come to mind: - Try out different programming languages. This enriches your toolbox and can make you see programming in a new way. You can't know if e.g Python is a great language when you have nothing to compare it to. - Get familiar with a cloud pro…

"Ask for help if you get stuck" absolutely right! But write down the answer for later reference, try (with the strongest possible effort) not to ask the same question twice. Or if you have to, you can also point to the previous solution and short addressing why/that this solution is not working anymore.

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#15

Your job is to deal with customer requirements (i.e. listening to people), and translate those into code other engineers (communicating with people) need to maintain, on a priority/schedule your management (also people), create to deliver business value. This is a people business, whether you like it or not. Develop those skills. You never finish learning. People who tell me "I know [technology]", invariably are not…

> Your job is to deal with customer requirements (i.e. listening to people), and translate those into code other engineers (communicating with people) need to maintain, on a priority/schedule your management (also people), create to deliver business value. This is a people business, whether you like it or not. Develop those skills.

This is really important. A lot of software engineers love to solve problems with a technical challenge. It can be more rewarding to understand the business side of things and be able to come up with cost effective solutions.

This also applies to operational processes. In some Saas companies the software is so difficult to operate that you need an army of technical consultant running custom queries and setting up ad-hoc cron jobs to keep the thing working. This happens because the dev team is focused on delivering quickly a feature and is not incentivized to work on admin tools or automated deployments. If you are able to streamline those operations everyone will love you.

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#16
Read the book Apprenticeship Patterns (which is available for free online here: https://www.oreilly.com/library/view/apprenticeship-patterns...). It contains a set of patterns that you can apply to figure out what to do in different situations through your career. I was quite far into my career when I read it and I wish I'd done so earlier because it helped me turn my career around. The book has a strong emphasis on finding the learning opportunities in different situations and that was key for me: never stop learning.

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#18
Focus on business value, avoid being seen as an expense. Many software engineers believe they're the most critical part of a company while higher-ups actually usually see us as expensive code-monkeys. Don't get me wrong: I'm not telling you not to work in IT security if your true passion is here, but keep in mind you'll most likely perceived as useless if everything goes well, and incompetent if something goes wrong. You'll most likely be among the first engineers to be let go in case of trouble because infosec is simply not that valued by businesses.

Consider avoiding working in cost centers, try to join profit centers. Better putted here: https://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pr...

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#19
This is my experience. I hope it will be useful to you. I am interpreting "starting out" as "finding a new job". It can also mean "starting day 1 on your new job", but I have less to say on that matter.

It's not necessarily easy to get a job. Don't set expectations too high, and then it's a bit easier. Don't even expect to get invited to the high expectation places (e.g. FAANG), even if you think you followed the right path. My path was: bachelor information science + master computer science (security/multimedia) + internships + TA jobs in programming + 1 year iOS programming + 1 year web development. I am still looking after 2 years. Now companies value me less due to the lack of experience (about 1.4 years unaccountable).

The best job opportunities I've gotten by far is through my friends or people that liked me. I got most of them when I was studying. 2 strategies here: be more likeable, or relentlessly meet as many people as you can (ensure high throughput) and let the people that like you stick to you and discuss business with them. In my experience, both are hard to do since meeting people takes time (out of your job search and keeping skills up to date).

I used to be a coding bootcamp instructor, and the irony is that the students who I used to train have far better positions in me. Some of them still look up to me (while my confidence has taken a big hit) and have invited me to become a senior developer at their company. It's quite funny, because most companies nowadays have trouble to take me on as a medior or even a junior. I don't claim to be a senior or junior. What I will claim, titles are nonsensical because they aren't standardized.

If you happen to go down my path, it will take a toll on your mental health and your sanity. Here is how to stay (somewhat) sane:

* Keep challenging yourself in coding projects, no matter how many companies reject you, keep pushing yourself. The more fun part is to do this with friends.

* Keep teaching people how to code when you know they can learn something from you.

* Keep all other stuff that you have going on in your life rolling (e.g. relationships, hobbies, etc.).

* Keep your costs to an absolute minimum, don't be afraid to stay with your family if you can. You can't use the extra added financial stress.

* If you can't stay with your family or keep your costs down, then lower your expectations and take any job, preferably in IT. Keep looking for a better job. Stay at your new job for 6 months at a minimum. Do your utmost best to kick ass at your new job.

* When you happen to have friends in desirable software positions (I have that since quite recently), apply to their places and ask them to relay what everyone is thinking to you. So far, this is the only way I have been able to get good feedback on my resume letter and motivation letters. The world will be grateful for it (without knowing it) because my resume and motivation letters are now 4 times shorter. This comment is longer than both of them combined.

* Try to stay positive and be careful with showing this form of vulnerability to friends or people on the internet, do so selectively. In my experience, people find stuff like this tough to read and can't handle it too well.

I hope it helps.

Re: Ask HN: What is your advice to someone who is starting out in software industry?

#20
Don't burn yourself out. It's just a job, not your identity. Put in your 40 hours then do something else. You might not enjoy programming for money as much as programming for fun, so you should also develop other hobbies.

Don't make it your responsibility to fix management mistakes. Few things are really urgent. Don't work long hours because of an arbitrary decision to ship on the 15th. Deadlines are missed all the time, and it's rarely a huge deal.

Consider contracting. When you have enough money, you can stop taking contracts and spend time on things you love. That can include programming for fun.

Remember that a lot of what you do is mere convention. Don't assume that everything is a certain way because of a deliberate decision. You can cancel meetings, question rrequirements, change policies and take the initiative. This tends to yield better rewards than mere toil.

Post reply on HN