I'm Matthew Setter. I'm an experienced software engineer and a security researcher. I’ve been developing software since 2000 and I started this blog to help you write simpler, cleaner, and more secure software, with less effort.
You Landed Your First Developer Role - Now What (Part One)?Development / Career / Professional Skills / PHP October 1st, 2015
Sometimes, landing the first role as a developer seems like the hardest thing to do. Then you realise it's only just the beginning. But what do you do to become a professional developer?
You want to be a professional developer - but how?
Do you have a nagging fear, in the back of your mind, that what you don't know is much more important, than what you do know? I'd not be surprised if you did. If so, how do you find out what you don't know?
You love programming, application design, software architecture. That's only natural. You'd not spend so much time coding, learning, and talking with friends about it if you didn't.
But it's only one part of the equation. There's so much more to the ecosystem of software development, of being a professional developer, that you need to learn, if you're going to have a successful and enjoyable career.
But What Do You Do?
I've been a professional developer since 1999 and want to share with you some of the best advice I've received over my career to date; advice which I've used to give myself a career I've been proud of.
In this 3-part series, I'm going to give you 6 key tips which have helped guide me to make better decisions, and avoid dead-end alleyways, which I'd have never known were coming.
I hope it'll help you craft a better career for yourself, and set you on a path to much career success, over however many years you choose to be involved.
Note: This was originally posted as one article, but has been split up over three parts for better readability.
1. Learn From Those Who Came Before
Long ago, I realized that success leaves clues, and that people who produce outstanding results do specific things to create those results. I believed that if I precisely duplicated the actions of others, I could reproduce the same quality of results that they had - Tony Robbins
Early in my career, I only went so far, only learned so much, then spent years doing the same things over and over and over again. I didn't progress, though I was very industrious.
It wasn't until I started at a company in the UK, where I was fortunate to be surrounded by a wealth of extremely talented, experienced, and knowledgeable individuals, that I truly started to progress and become a developer of worth.
I am forever indebted to those people, many of whom I now have the privilege of calling friends.
By surrounding yourself with people who both know and are more experienced than yourself, you can learn so very very quickly.
Whether that's learning specific technologies, best practices, or techniques, or how to act and carry yourself when the going gets tough, learning from people already do it well is invaluable.
They can guide you, influence you, and teach you more in a month, than you could learn in several years. When you consider new opportunities, look at the team which already works there, and the people in that team. What's their experience, what have they done, how have they acted as mentors to the wider community.
Don't just look at the pay packet. Outside of specific roles, look around for people in your community, in your local user groups(s). Seek them out (not in a stalker kind of way), and either actively learn from them, or learn from them in a more passive way, by reading their blog, watching their talks, and sitting in on their presentations. You'll learn so much.
2. It's Not Just About Code
Recently, I was talking with Cal Evans, the voice of the PHP community himself, and he had two golden pieces of advice to share on the topic:
Professional developers will power through it, will say that this is my responsibility. I'm an adult. I owe it to my employer and my team to do it in the most professional manner I can
Can they work on this team, and can the team work with them? The productivity of the team is more important than someone who can technically do the job
This to me epitomises the key aspects of what you need to do. Note that in neither quote, did he emphasise technical skills. Rather he focused on the personal, soft, or human skills. Don't overlook this advice because it's, perhaps, seemingly so simple.
Here's another way to look at it. I was recently watching a local TV show, here in Germany, which follows German expats and how they're going in their adopted homelands.
One story recently checked in on a young lady who'd moved to Spain and was applying for a role as a fitness instructor at a gym.
The owner/operators remarked, after the interview, that her technical skills were lacking; but that was OK, because she had great people skills, and a willingness to learn.
Why was this OK?
Because people skills, interpersonal skills, are much more important. Technical skills can be taught over time. If you don't have an ability to relate to people, or a willingness to learn, then even if you are the best person, technically, in the room, not many people are going to want to work with you.
In part two, we discuss that it's not just about code, and that you can never stop learning.
Over to You!
Are you at the start of your career, not sure of what to do? Have you struggled in your career, and overcome it? Share your experience in the comments. I'd love to get your thoughts.
Join the Email List
If you enjoyed this post, why not join the email list and get all future posts straight to your inbox? In addition, you'll get background information, extra research, and other content that's only available on the list. I promise I'll NEVER spam you. And you can unsubscribe at any time.