That’s how I would describe my state of mind three to four months ago. I had some big audacious goals I wanted to achieve, but I felt paralyzed. I couldn’t figure out how to move closer to those goals or make any progress at all.
Sure, I would open my laptop every day and work. I wasn’t a total slug. At the same time though, I wasn’t working efficiently. I couldn’t tell you how the work I was doing would translate into the goals I wanted to achieve.
At the same time, I was overwhelmed. Having a lot to do but no clear plan to the finish line is a sure way to get me nervous.
I knew I had to turn something around.
This past week, I was chatting with my fellow Automattician and friend, Simon, about the process I use to teardown days, weeks, months, and quarters. It’s the process I began using to solve the frustration described above. It’s not revolutionary. It just works for me (and maybe for you).
The goal of the whole process is to translate long-term goals into daily and weekly habits that will set me up for success down the road.
The Starting Point
Let’s start with some big, abstract goal I had in January – become a developer1.
More importantly, I wanted to work as a developer at Automattic, a company that hires the top developers in the world. I knew it would (and still will) take quite awhile to get anywhere close to that skill level. Maintaining forward progress and motivation would be key.
Setting long-term goals isn’t enough. Goals don’t immediately inspire next actions. Once I have a large goal in mind, I start asking some questions to dig up details.
What skills/concepts do I need to learn that would set me up for success even if I failed miserably?
What do all of the experts have in common? What does “top notch” in this field look like in the real world?
Regardless of what goal you’re trying to achieve, you’ll notice similarities across top performers in that area. For example, nearly every successful writer will tell you to write every day even if you’re feeling uninspired.
In my case, I wanted to look at the commonalities of top developers even though I knew little about the field. So, I resorted to combing through job openings. I was looking for common attributes everyone looked for when hiring developers. From there, I came up with a list that included items like learning version control with Git, building side projects to demonstrate my skills, gaining experience with build tools like Grunt or Gulp, and demonstrating adaptability to new frameworks3.
Now that I have some top-level goals, I break those down into quarterly objectives. For example, if the top goal is to learn version control with Git, three quarterly objectives might be:
- Complete an online learning course in Git to learn the basics.
- Write a series of tutorials for anyone learning Git to both reinforce my own knowledge and share it with the world4.
These objectives have two crucial commonalities. First, they’re pass/fail. It’s painfully clear if you have been successful. Second, they start to build a path to success. You can start to see what the daily habits might look like.
This is actually an exact replica of some of my Q3 objectives. I completed the Treehouse Front End Web Developer course, which included Git. Then, I built a basic to-do list and pushed everything to GitHub. That was my first time using Git from the terminal.
Now, it’s time to build the base of the pyramid – the weekly building blocks I’ll use to achieve my quarterly objectives5. I start each week with the same question:
What would a perfect week look like?
When I’m closing my laptop on Friday evening and cracking open a beer to celebrate an amazingly productive week, what exactly would that look like? What tasks would I have checked off in my notebook? Of course, these tasks should all roll up nicely into a quarterly objective.
What does this look like in practice? Let’s take some of my Q4 objectives for example:
- Push 16 commits to Calypso.
- Learn React JS and use it to build something small.
Now, my perfect week would include things like:
- Watch five React videos on Udemy.
- Finish building _ component in my React project.
- Push two pull requests to Calypso.
I mentioned that the entire goal of this process is to build daily and weekly habits that set me up for success. An example of that in practice, my first action when I turn on my laptop in the morning is to watch a React video on Udemy. If I do that every week day, I’ll hit my perfect week goal. Similarly, I schedule time two days a week to dig into Calypso. If I submit one pull request each time, I’m set.
One final note on the weekly chunks, I don’t always hit my targets. In fact, I frequently fall short. The week I set out is a perfect week, which rarely happens. I do a quick recap at the end of the week on what went well and where I could improve for next week.
There you have it – 1,000 words on exactly how I set goals for myself. While I used my goal of becoming a developer as the example here, I apply the same process to other goals like becoming a better team lead at Automattic.
I’d love to hear more about how you set goals and work out steps to achieve them. Please share in the comments or better yet, write your own post and share it with me. Also, if you end up using this process or have questions on how it works, please let me know. Happy to help you work through it!
- You’ll notice I continue to use the past tense – “I had in January…”, “I wanted to work…”, “I knew it would…” To be clear, I still have this goal. I”m using past tense to illustrate my thinking in January. ↩
- I’m not the first pereson to think of this. I heard it from Tim Ferriss and several other people first. ↩
- It seems common for companies to hire flexible developers that could learn a new framework easily. ↩
- I wish I was better at that last bit – writing blog posts to share with the world. It’s a focus area for 2016. In the meantime, check out my buddy Paul. He does this really well. ↩
- You’ll notice I skipped months even though I publish targets in my monthly reviews. I prefer to work directly in weekly increments for some reason. The monthly targets are reverse engineered based on weekly goals. For example, if I think I can read a book a week, my monthly target will be to read four books, but I’m actually focused on the week timeframe. ↩