Jordan loves seeing engineers grow and achieve their goals. He's obsessed with personal growth and spends most of his time learning how to become a better engineer and teaching others how to do the same. Starting in his career, he grew to Senior Software Engineer in just 2 years. His newsletter, High Growth Engineer, reached 40k subscribers in less than 1 year. Recently, he started a course on Maven which gives mid-level engineers the skills to reach Senior Engineer. It was listed as a top course on Maven and received 4.8/5 stars.
Exaltitude newsletter is packed with advice for navigating your engineering career journey successfully. Sign up to stay tuned!
I had a great conversation with Jordan Cutler, a Senior Software Engineer and author of "High Growth Engineer" newsletter, about different types of goals, how to make decisions about them, and why having clear plans is crucial for success. Come along as we check out the 2024 Guide to Goals for Software Engineers. Jordan will be sharing helpful tips based on his own experiences, making it easier for you to reach your personal and professional goals. Let's dive in!
You’ve probably heard of SMART goals. We’ll talk about that more later, but I’m here to tell you I don’t think every goal needs to be SMART.
Here are the types of goals I’ve identified that you can use:
1. Objective not 100% within your control: “Be promoted to Senior Engineer”
2. Objective 100% within your control: “Exhibit the behaviors of a Senior Engineer”
3. Action-based checklist: “Read 25 books in 2024” or “Do 3 database courses”
4. Recurring pattern: “I want to read 1 hour per day” or “I want to go to the gym 3 times per week” or “I want to study for interviews 2 hours per day.”
5. Feeling: “I want to feel more confident at public speaking.”
There’s no right or wrong on which of these to use. It’s just helpful to know which you’re using and what to keep in mind for each to make them effective.
For my 2024 goals, I have a mix of these, but I mostly use the first 3.
We’ll talk about how to decide your goals and how this relates to SMART goals next.
The easiest way to decide on your goals is to do it in layers.
First, decide on a focus area like “Personal growth”, then choose goals within that.
First, you choose focus areas based on which areas of your life you want to improve.
For me, I’ve chosen these:
If you’re stuck, you can also check out Ali Abdaal’s Wheel of Life analogy. My system is a bit different than his, but he gives a great approach too.
For each focus area, ask yourself: “What do I want to be celebrating in 1 year?”
Below you can see my answers to each of the focus areas:
Todoist board of each of my focus areas and goals for the year in that area
These goals should be SMARTish—specific, measurable, achievable, relevant, time-bound).
I say SMART“ish” because it’s important to paint the picture of achievement as clear as possible so you have a target to work toward.
BUT, having any goal is better than not writing anything at all. Not everything needs to be a SMART goal. It’s ok to just have a general direction for yourself.
Here’s an example:
I might use the “Non-SMART” goal version if making it SMART comes off too oddly specific or if the goal is a lower priority and more of a “nice-to-have” that I should just keep in mind.
For each goal you create, you should know why it’s important to you to complete it.
Without this, you put it off indefinitely because you don’t have a reason to do it.
Here is what I wrote for my “why” on my goal of reading 8 books this year:
My “why” associated with the goal I want to achieve that year.
Success = Goals + Systems to achieve those goals
Now that you have annual goals for each of your focus areas, break them down into quarterly (or every 3 months) goals.
Note: You can divide into each month if you prefer (Jan, Feb, March, etc. goals).
Lastly, set action items that work toward each goal.
Below is a partial diagram to show how I break down my 8 books in 2024 goal.
Example flow of how an annual goal turns to a concrete system
Note: You can add as much or as little structure as it makes sense for you. Too much structure could add stress and reduce flexibility.
The idea is you start with your end goal and work backwards into smaller, more concrete steps. It works the same way when you plan a technical project at work.
You need a system to check in on your progress.
For me, I use a monthly repeating task in Todoist.
Todoist item for me to plan my month, next month, and check in on goal progress.
You could set a Google Calendar invite for the 1st of the month, use phone reminders, use Notion, or any other app you’d like.
The idea is to set yourself up for success with a system to check in on your progress.
You don’t have to do any of this.
For the most part, I got to where I am by only focusing on inputs and not doing this specific exercise. I’ve moved to this approach because I have a constant stream of new tasks to do and I want to have a clearly defined picture of my end goals and cut out everything else.
Don’t feel like this is something you need to do or let it be something that stresses you out. You also don’t need to follow this exact process.
Even taking 1 minute to write 1 thing you want to accomplish this year then never looking at it again could help you have a clearer picture of what you want.
Exaltitude newsletter is packed with advice for navigating your engineering career journey successfully. Sign up to stay tuned!
Copyright @Exaltitude