Success As a Software Developer – Getting That First Software Development Job
The tech industry is bursting at the seams with new positions spanning from QA Specialists, Software Developers, DBA’s, UI/UX Designers, DevOps, to Sales Engineers, Product and Project Managers. So with this increasing breadth in tech, how do you maintain your skill-sets to become proficient across the entire spectrum?
Very simple, you don’t (we’ll get to this later).
David McCreary, a Senior Software Engineer at NextVR stopped by last week and gave the LearningFuze cohort solid advice on how to not only prepare for and get into the growing field of software development, but also offered fresh insight into how to succeed. We tried capturing some of the wisdom he imparted and summarized it below.
We thought we should start with a very good point David actually made towards the end of the presentation about creating your elevator pitch.
Let’s say you are an aspiring developer and have already learned a few programming languages, even worked on a few neat projects. Your resume is pretty up to date and seems professional, but to clear hurdle number 1, getting your first developer job, you should practice and refine a simple elevator pitch that would answer:
“How would you describe what you do in one sentence?”
This would be easy to overlook but keep in mind that getting your first developer job is going to be largely comprised of describing just that (and how well you do what you described among other things).
Keep it simple, as an example David shared his:
“Hi, my name’s David, I write server software for tech startups.”
Sounds easy enough? Well, you may want take a couple of stabs at it because if you are a new developer you will need to:
- Find a way to describe your new developer skills and aspirations (relevant), and
- Be accurate with describing your beginner skill-sets, or proficiencies
You can revise your elevator pitch as your proficiencies and skill-sets grow so you do not need to overdo it at the beginning and definitely do not misrepresent yourself.
Once you have a rough idea of how you want to describe yourself to the world, go into the world and start getting outside of your comfort zone:
- Network, network, network (not talking about wifi). Attend meetups, connect by LinkedIn and find a mentor. Start with your elevator pitch which is already done :). Set a goal for a number of meetups so you stay focused on the bigger picture.
- Prepare your portfolio. Get involved with Open-Source projects and Github. Keep writing code and share it. If you do not know how, go to a relevant meetup group or find an active online community and ask for help. Start with your elevator pitch or modify it so people know how to give you better advice (hopefully, use your common sense filter).
- Work with recruiters. It is a numbers game out there and recruiters are happy to help polish up the resume and make connections with companies who are hiring. Start with your elevator pitch when approaching or talking to a recruiter.
- Add to your skill-set. Continue the learning process. See what employers are looking for and get familiar with those languages. Use the language to stretch your understanding of some nuanced edge cases and practice problems for the technical “whiteboard” part of the interview.
- Develop the soft skills. “You never get a second chance to make a good first impression” is true when it comes to the interview. Practice how to answer common interview questions and how to show how you would be a benefit to the organization. Practice that elevator pitch!
- Be realistic with salary expectations. An entry-level developer salary is not the same as a developer with a couple of years of experience, but look at the larger picture, do you have other skill-sets and passions that are compatible with the company/position? Do they offer an unparalleled opportunity to grow quickly and learn that it is worth a lower paycheck in the short-term?
Figure out how to get that software development job from where you are as it takes preparation and opportunity which you create by networking.
What about success after getting that first technical job? What languages or skills should you focus on the most? At the beginning of the article, we alluded to this part and David had a great simple representation of how to approach this answer:
The top line of the ‘T’ represents breadth of knowledge, so be curious enough to learn a little bit about a lot of things, but the vertical line represents the depth of your skill-sets or focus – specialization.
For a beginner, knowing which vertical to pursue may not be apparent right away, but with enough exploration, understanding industry needs, and knowing your own proclivities will make this choice more readily apparent.
David’s note on what it takes to succeed was pleasantly different than other industry veterans and summarized them in 3 ways
- How you spend your time draws out either the breadth of knowledge or specialization line, and you want to keep that proportionate!
- Provide value by doing something that you are good at (Work that ‘T’).
- Do the above 2 in an industry that you love (loved this part, as it doesn’t necessarily have to be at a technology company).
David’s closing points were highly encouraging and resonated with every student – whether you are a beginner or a veteran, you can build your confidence by talking to more people and having no regrets, you are just trying to learn.
If you are not very confident in your current skills, then at least be confident in your ability to learn, which is something everyone can do, and then go out and apply it until you do become good at what you do and grow your confidence in the process.
We thank David McCreary, and NextVR, for their time and David wrapped up a great presentation with a demo of some of NextVR’s content available on their NextVR app that can be downloaded if you own a Samsung Gear VR (best demo yet!).