What to expect
Growing and improving as a developer can come in many forms. For most of us we grow as a function of simply doing our day jobs. As long as we keep doing new things we keep growing. Maybe a particular technology excites us and we build a project over a weekend.
I'm going to argue that professional development is not the same as growth. That it requires a deliberate choice be made by the developer on their own.
I'm also going to present a series of plans and guidance around creating your own personal professional development plan. Even if you don't buy the whole thing, I hope you manage to come away with something of value.
The story presented is my own, if your experiences differ I would love to hear your story in the comments or you can reach out to me directly.
Introduction
This is a story of how I've drifted through my career. I'd love it if this confession let someone learn from my mistakes.
I've been a developer for just over 20 years now. I didn't start that way. As a teenager I tried to get into film school. They wouldn't have me so I wound up enrolling in film studies which, it turns out, was nothing like making movies. I wound up transferring into and finishing a degree in psychology.
The few electives I took in computer science were the highest grades I got in my university career. It was just too late to switch my major AGAIN and I didn't meet the maths requirement anyways.
I drifted along on the wind just handling the single next thing that was right in front of me.
This is a story of how I've drifted through my career. I'd love it if this confession let someone learn from my mistakes.
Half Assed Beginnings
To be clear: drinking beer with your roommates while playing Quake on your home-LAN is not professional development.
My roommates and social circle in 1998 were predominantly computer science students. We lived in a shared house with CAT5 cables running everywhere. We'd buy a case of beer and play DOOM across the network. When one of the guys got the first 3dFX video card, our eyes bugged out of our heads.
We would take turns playing on the good computer - I mean look at these graphics. Buttery smooth 24 frames per second in 640x480!
One day going into summer, I got a phone call from an unknown number. A guy who introduced himself as Jeff said he needed a summer student to come work at Nortel and maintain his PERL scripts while he worked on the Y2K bug.
My friends, who were all on high-paid internships didn't have time for it, but they all recommended he give me a call. The job was mine if I wanted it and twenty bucks an hours was far more than I was making as a busboy at the campus bar... in that moment my career as a programmer was born.
To be clear: drinking beer with your roommates while playing Quake on your home-LAN is not professional development. (Probably a great example of networking though)
Jumping into the deep end
Getting laid off is not professional development... or is it?
My onboarding at Nortel was pretty quick. I was given a computer with internet access and after being shown how to run the program in PERL was told to just make sure it kept working.
Growth and learning in this time was to figure out whatever bug was right in front of me and make sure the customers were happy.
Career planning was nowhere on my radar. As far as I was concerned I was getting way more than any psychology student should expect to get paid, in a job where my only qualification was playing quake with my buddies.
After a couple summers I came on full time, there was still no real plan. The salary bump was significant though, I remember being so excited that I was only $2000 shy of making a thousand dollars a week.
Y2K came and went without so much as a blip. There were however, some "accounting irregularities" to worry about. The dot-com crash wiped pretty much everything off the table.
It was like the Oprah Winfrey show but for layoffs.
Getting laid off is not professional development... or is it?
Becoming a teacher
I didn't think I'd ever get another job in programming since I was a faker. It turned out that my severance package was pretty good. It was enough to pay tuition and rent at teacher's college.
I could definitely teach computers to high school kids. My working experience was accepted as a stand-in for the missing comp sci degree.
It was at teacher's college that I was first given a detailed look at the concept of professionalism and professional development. It makes sense that they'd want to impress on you the importance of the responsibility you have when your job is to care for other people's children.
What is a professional?
A professional must engage in continuous deliberate self-reflection and improvement
In teaching, a professional is considered to have a number of mandatory characteristics. If you google around you'll find dozens of different definitions and lists, but the broad categories include:
- A professional must get paid
- A professional must be an expert in their field
- A professional must have "a calling" to the work that they do. They're driven to the work by an intrinsic motivation
- A professional must behave in an ethical manner
- A professional must maintain emotional control, avoid gossip and, focus on doing good work
- A professional must engage in continuous deliberate self-reflection and improvement
Governing bodies of professional organizations of all kinds require their members engage in regular professional development activities. Teachers have PD days. Doctors have to take courses. Lawyers are required to fulfill "CPD" hours.
Programmers have no governing body and are therefore not forced to meet this requirement, but I believe we'd be hard pressed to find a developer who didn't learn new things all the time.
Simply learning new things isn't enough to be considered a professional development plan. In software development we all learn new things every day. It is one of the highlights of the job. Too much of the time, that learning is reactive as opposed to proactive.
I'm not here to denigrate reactive learning. As we progress in the story you'll hopefully see that I've done 20 years of reactive learning and think I've done alright.
I am trying to argue that proactive learning is a choice you can make. I believe that it will lead you to a far more fulfilling career over time.
Leaving teaching
I worked as a high school teacher for five years after that training. It's not the central point of the story so we're going to skip over it. After a while the itch took hold again and I had to return to programming.
A Return to Half-Assing it
To be clear, choosing not to engage in professional development is also a valid choice.
whatever you choose, you make that choice deliberately.
In my next fulltime programming job, I was back into the position of white knuckling my learning. I'm sure you know the kind. There are tasks in front of you that need doing, you don't know how to do them. You want to keep your job so you get to learn the thing that is immediately in front of you.
There's no plan really not outside of the needs of the business.
I don't know why I left the concept of structured professional development behind. Certainly I'd engage in weekend projects when I thought something was cool. I'd tinker and play with things to see how they worked or if I could do them. I'd even call it professional development at the time. It wasn't. Not really. It wasn't continuous, it wasn't structured. It was fun though.
In some ways, I also benefitted from the fact that many developers don't even do that much. Even that half-assed weekend warrior stuff was more than many developers do. To be clear, choosing not to engage in professional development is also a valid choice.
I'm writing this because in recent months I have had discussions with nearly a dozen new-in-career and intermediate developers who are confused as to why they feel like their careers have stalled. I would hope that through reading this article, whatever you choose, you make that choice deliberately.
Don't wait for the promotion to be handed to you. Make it undeniable by getting better at your job every single day.
Enter Top Down Professional Development
These are not real professional development. These are bribery, coercion and, a political minefield.
Some companies have PD planning for tech. It is a feature that employees ask for regularly and even demand. Well meaning companies of all sizes will try to put together a process for it.
Unfortunately its implementation is often deeply flawed owing to the structural inequities built in to the system. Consider the problem(s) with top-down PD.
A senior manager runs a poll of employees who resoundingly demand professional development. They tell the managers who report in to them that they will need to coach their direct reports in professional development. Maybe there's a form to fill out, that rolls up into a dashboard, everyone gets their checkmark and we all get to call professional development done for another quarter.
If we look at that meeting though, the one between you and your manager, they say something like "I really don't know what this is, but we need to fill in the form to get our checkmark." an auspicious start to be sure.
Then they ask you where you see yourself in five years. Your boss. The person who writes your evaluation is asking what you want. Maybe the power imbalance alone is enough to change your answers. Maybe they pressure or coerce you into adding things onto your plan that benefits them.
I've had some experiences with these types of plans:
- I've heard "They're making me do this, I have no idea what I'm doing, let's just check the boxes and get out of here"
- I've failed to be honest about what I really want because I was worried about the fallout
- I've tailored my answers to what I thought my managers wanted to hear
- I've been been promised a promotion if I picked up a certain certification in an uninteresting technology (only to later discover my manager didn't have that authority)
- I've seen employee survey results "seeded" with technologies that none of us asked for.
- I've seen plans get ignored entirely "another team is doing the AWS work, have you considered an AEM certification instead?"
- I've seen boot camp grads begging to write a for loop get stuck on creating banners & emails
- I've seen computer science grads bewildered as to why they're exclusively getting HTML markup work
Corporate professional development plans often have a structural power imbalance in them that prevents honesty and prevents being honest about what is best for you.
These are not real professional development. These are bribery, coercion and, a political minefield.
It's time to make a choice
Professional development must be deliberate and it must be what YOU want for YOUR career.
It shouldn't be a surprise to hear that I've been guilty of allowing stagnation. This article is a confession as much as it is a guide.
One of my failures since leaving teaching has been conflating LEARNING with professional development. It may be growth, but it has not been structured. As a feature of agency life you get a wonderful opportunity to work on dozens of projects a year.
You learn process, different languages and frameworks. You can lean about working with multidisciplinary teams in myriad ways.
It has always been learning. It has always been growth. It hasn't always been professional development. Professional development must be deliberate and it must be what YOU want for YOUR career.
How do you know what you want without first taking the time to reflect? You need to take time to consider your career. In the next section I'll lay out a strategy.
Professional develop thyself
The first thing we need to do is eliminate the structural power imbalance from the equasion. Don't do this with your manager in mind. Don't think about your current employer. You can share your results when your goals align, but it is important that you do this for yourself without any outside influence.
In taking those first steps you will give yourself tremendous power over your own career. If you know what you want, you will be better equipped to seek out, recognize and, seize the opportunities that get you closer to your goals.
If you are ready to lead your own professional development efforts it's time to come up with a strategy. Fortunately the work of structure has been done for us. There's actually a lot of science behind it. You know, so long as you are ready to admit Psychology is a science (I'm looking at you Tom Cruise).
Step zero: Schedule
Open your calendar app right now. Invite yourself to a 1 hour meeting called "professional self reflection" set it to recur weekly.
The first part of the definition that we haven't discussed at length is the continuous part. Quarterly checkmarks aren't good enough. It has to happen every weekly at a minimum, prefereably it happens every day. You can take a moment every day to ask yourself the quality of your work and if there was anything you can do better.
If you've read this far, I'll assume you're still with me. Let's start by scheduling it. Open your calendar app right now. Invite yourself to a 1 hour meeting called "professional self reflection" set it to recur weekly.
Literally do this.
I'll wait.
What is professional self reflection?
The ability of a
teachingprofessional to critically, realistically and constructively review one’s own performance in order to take necessary actions to improve abilities and/or maintain motivation towardteaching andlearning goals[ref]
Step one: Reflect
In week one of professional development, you're going to critically reflect on where you are as a professional. In the section below you're going to be asked to set goals. Read the questions once so you know what's coming read the section about how to set a goal, then go back and answer the questions.
- What am I good at?
- What do I enjoy doing?
- What can I get paid for?
- What do I need to improve upon?
- What do I want to learn?
- What are my goals within the next 1 to 3 years?
- What are my goals within the next 3 to 5 years?
- What are my goals within the next 5 to 10 years?
On setting goals
There is research which describes the optimal way to way to set goals. Use the acronym SMART. People are more likely to achieve goals that are:
- Specific - keep the scope narrow so you'll be able to lay out steps to achieve it.
- Measurable - some of your goals may be binary in nature "I want to work for a FAANG company" but others might be "I want to complete 3 easy and one medium leetcode questions"
- Attainable
- Relevant - do your short and immediate term goals feed into the long term goals?
- Time-based - some goals will be very short term like "I'd like to get new contact information from 5 people at tonight's networking event". Others will have a horizon of years. The point is that there is a time when you can check in, evaluate your performance and adjust as necessary.
This article https://www.indeed.com/career-advice/career-development/smart-goals has a great write up on goal setting.
Your goals are your own, but if you're stuck for ideas take a momnent to consider whether you're happy with:
- your current compensation
- your work life balance
- the tech stack you work in
- the things you're building
- your opportunity for growth & leadership
- your passions outside of work
- your health, relationships, family, spirituality
Don't neglect the bottom two! If you're building yourself for a long-term career you need to make sure that you have things that recharge your batteries. Making time for your life outside of work will innoculate you against burnout. Friends, family, health and the rest are the support network you need to keep you going through the hard times.
Step two: Focus
In the days and weeks that follow your first session you've got to start working towards achiveing the goals you set. (Uggh ... nobody said this would be hard! I know, I'm a monster)
There's a really great article which fleshes out this phase of the plan by author Vanessa Van Edwards called Professioanl Development Plan
While I encourage you to read the article in its entirety it can be summarized as follows:
- use deepwork or pomdoro technique to engage in study sessions as determined by your goals.
- Check out Vanessa Van Edwards quick Productivity video for more productivity help
- Set a morning routine here's Vanessa again with her ultra-chipper delivery telling us how to be a morning person. (Ugghh... she's so charming it hurts. right?)
Use available time to work towards the goals you've set for yourself. Not all your time mind you, you need to rest and relax, but ensure you have an appropriate amount of time to work towards the goals you've set.
The amount of time you need will vary as a function of the size of the goals. You'll get chances in future weeks to recalibrate the size of your goals to the time you can dedicate.
Step three: Repeat
You're in the loop! Every week during your Professional Development time, review your goals. Set new ones if needed, adjust as needed keep going.
How do you move an elephant? One leg at a time.
Take action towards your goals and bit by bit you'll get there.
Professional Development is a Choice
Thanks for reading. I hope I've sparked a thought for you about the shape and structure of your approach to professional development.
The choice is yours to make.
If you have feedback, supporting advice, if you disagree with me or just feel like connecting comment below or reach out on twitter you can reach out to me on twitter
Further Reading
- https://www.indeed.com/career-advice/career-development/professional-development-plan on professional development plans
- https://www.scienceofpeople.com/professional-development-plan/ more on the professional development plan
- https://github.com/AlexChesser/tech-interview-prep-course/blob/main/documents/professional-self-reflection-questions.md Professional development plan self reflection questions
- https://www.indeed.com/career-advice/career-development/smart-goals how to set SMART goals
- https://youtu.be/23OhUjz1s-4 The science of goal-setting
- https://www.scienceofpeople.com/productivity/ more on productivity
Top comments (0)