Dear new developer,
I was asked recently at a talk I gave about what was the best surprise of being a new developer. I was talking at Turing School, and had discussed some of the things that surprised me when I was starting out.
There are a lot of great things about being a developer. For all that is wrong with the software industry, when you are a developer:
- flow happens
- you are doing office work (typically)
- there are smart people around you
- you are paid well (compared to many many jobs–median pay for any job in the USA is 32k in 2018 and for software developers it is 105k)
- you get to learn all the time
So all in all it’s a pretty great job.
But the best thing and what surprised me a bit as new developer (and makes me sad) is how much developers are listened to. Or, rather, how little folks in other professions are consulted and listened to (based on anecdotal evidence and conversations, sorry no hard data).
So, being a developer (in a healthy team and company) means that your opinion is heard.
Dear new developer,
This post from Corey Snipes, an experienced software developer, is well worth a read. From the post:
People skills help so much. It’s hard to overstate that. I am a competent software developer, but I am really good at working on a team and that has carried me to increasingly sophisticated and interesting work my whole career.
There may be some kinds of software jobs where communication is not important. Maybe something in academia? Maybe finance? I don’t know, but every software job I’ve ever been in has fallen into one of a few categories:
- working on a team. Here communication is important as it helps keep the team aligned and moving toward the correct goal
- working by myself. Here communication is important because I’m talking to customers about what they need.
So I agree with Corey that communication is crucial.
It’s important to be clear about your limits but also about your potential. New developers are hired for potential. Again, from Corey’s post:
Be honest about your capabilities. Some people will say “fake it till you make it” but that doesn’t work for me and I’m no good at it anyway. I’d rather work with someone who knows their limitations than someone who thinks they know everything, and that’s the sort of person that I try to be. Figure out how to acknowledge your inexperience without making it sound like a problem.
The post is full of other good tips for folks starting out. He talks about two different places where a new software developer can deliver a lot of value: a paid position in a large software team and a volunteer position building something for a small business. I’m not a huge fan of volunteering because I feel like people should be paid for value they provide, but I understand that when one doesn’t have a track record, one needs to build one any which way. Open source contributions are a great way to do that, but this activity is less focused and a longer play than finding a local business that needs a website and just putting one together.
Another tip that resonated was going to meetups and getting out into the community, but I’ve already written about that.