Before the pandemic I was always on the move, and I would have told you always learning. I found myself at various events, talked to many different people, was always reading something, and my job changed frequently, even within the organisation I was in. I also wrote a lot, which helped me consolidate and clarify my thinking.
Then, the pandemic. Everything came to a halt and that included my own learning… I no longer had the breadth of experiences that made me feel like I was learning constantly, and some days I barely felt I could write a text message, let alone anything else.
At some point, I realised that I was stagnating – that I was executing a familiar playbook, and couldn’t list anything that I had learned recently – and tired of it. That I wanted to feel like I was learning and growing again, but that I would need to find a different way. The world had changed. My job had changed. I had changed.
It took some time and experimentation, but eventually I shifted to a more deliberate, outcome driven approach. This looked like:
Signing up and paying for specific courses (like CoActive coach and leadership trainings), and blocking out the time to learn.
Shifting away from habits and to more outcome driven personal projects (this was the difference between writing a book and blogging every week).
Rethinking my organisational systems to be more goal oriented (my Trello board is now oriented around outcomes rather than habits).
Basically I stopped managing my learning the way I manage my fitness (a blend of habits and whims, which mostly works, but probably only because I genuinely enjoy working out) and started managing it how I would manage a large project. Identifying high level goals, defining supporting strategy, and then using that to confirm or deny. Less visible activity, but more outcomes. Less validation, more meaning.
I think prioritising professional dev is often hard because it’s IC work on top of your existing job, that you have to fit into your schedule. It’s also often a shift in mindset – from meetings to doing, or from coding to writing… The most important learning is important but not urgent, which means it can always be put off until tomorrow when you will have more energy – even if you know that’s not really true.
It’s much easier to just do things you’re committed to (aka conference talk driven development) and/or what you want and argue that something is better than nothing. Something probably is better than nothing, but it doesn’t mean your effort-impact actually makes sense. The less effort you have time or capacity to put in, the more the impact matters.
Essentially this change made me both the manager and the IC. Doesn’t everyone joke they are their own worst manager and difficult to manage IC? I am no different. Manager-Cate would set goals for Cate-the-IC that seemed like a cruel joke at the end of a long day or week. The only thing that I’ve found that helps (so far, suggestions welcome), is to split the activities:
Carve out time to think deeply about what my next proximate objectives are (strategy). The end of year quiet and the year compass is a helpful exercise for this.
With my manager hat on break down and prioritise the tasks.
With my IC hat on, see what I can chip away at.
Do I feel like I have my professional dev on lock? No. There were things I wanted to do in 2025 that I didn’t figure out how to fit in. But at the same time, I can see that I accomplished more with this approach than I would have done without it. Such as:
I read 12 non-fiction books this year.
My Irish citizenship application is in (will give me freedom to work in the EU again).
I have finally figured out how to make Trello work for me. I found having a board for each project overwhelming, and the items in cards too heavyweight. Often a reasonably sized task have a bunch of subtasks, and I might not manage to do them all at once.
1. Check Lists
I use these for task-specific TODO lists. For example “talk at X” will have a checklist of everything I need to do – abstract, bio, travel, all the way to filing the expense report.
2. Templates
For things that reoccur a lot I have a card with a checklist that I can copy – for example new trip cards, or talks all have a pretty standard list of things to do (you can copy list from other things, but I like having a generic one I can copy and customise).
3. Project Lists
I keep multiple projects within a board. Each project has it’s own list. And then I have a “done” list which I mark with a month (useful for updating this document), and can archive it when the next month begins – balancing the fact that I don’t want my completed tasks hanging around forever, with my need to feel like I’ve done something.
4. Current / Future / Low Priority
I have limited myself to three boards. The first: current priorities. This is the one I look at first, and where the bulk of my day (that isn’t already organised on a client board) should be spent.
Future priorities holds half baked ideas, projects that have been set aside for now. Anything that I shouldn’t be worrying about this month.
Low priority is all the bits and pieces that can fill up your task list but provide very little ROI. Blog ideas go here, trips I’m planning, talk ideas that I could flesh out and submit, projects that are ticking along but aren’t really under active development. These are the things that will never be a “true” priority but I want to keep track of.
5. Dates and Labels
Where applicable I add a date (e.g. a talk happens on a specific date), and use color-coded labels to indicate things like: has dependency on [person].
Downsides
The downside of this approach is that I’m not comfortable sharing these boards with people. Current priorities captures financial TODOs, and I don’t really want to share the whole board with people I work with on specific projects in order for them to see that list.
I figure these downsides are worth it. I want to capture the things that I own on these boards (which as someone who is self-employed ends up being everything). It’s more of a dashboard for the state of things than a project management system. But that’s fine.
This Thursday, it will be two months since I arrived in Sydney. I came to work on a specific project, and that project came with a pretty ambitious deadline. I don’t know if anyone, including the person who thought this deadline up, really believed we would make it. But we did, just about. We as a team, did. And that moment, where you can say, “yeah, did that” – pretty awesome. But there are moments that happen before that, where people start to look at what you’re doing, and say, “hey, you just might do that”, and those are pretty cool, too.
I ran this project. Which means if we didn’t make that deadline, it would be on me. Making it, well, good leaders give away credit and take blame. But I do get to feel satisfied. But the biggest thing I get to feel satisfied about, is that in the last two months, I have consistently worked around 40 hours a week. I have gone out, a lot, and found friends and things to do in Sydney. Got (kinda) settled in my apartment, even taken a day’s vacation. Worked out 4-5 times a week, and averaged 4.5k fuel points a day. My life is a little loopy, but it’s definitely diverse.
Extensive reading around personal development, and watching other people run things, and running my own, much smaller, things meant I had some ideas about Planning, Leadership, and keeping sane under pressure. So this is my three most important things in each area, most of which I tested by breaking at some point.
Software Development Planning In General
Eliminate your Known Unknowns
This is the most important thing. You have a feature set and a deadline, some things you know how to do, and some things you don’t.
The thing you don’t know how to do is the most important thing you need to do today. This unknown falls somewhere on the scale between being very easy, and being hard / time consuming / requiring someone else to change their thing / flat out impossible. The sooner you know what it is, the sooner you can adjust your estimates, or your features, to be more realistic.
Think Medium Term
I don’t hack. I worry, actually, that I literally can’t hack. I can’t fight with something, and be happy with a one line fix labelled “DO NOT TOUCH THIS”. I always need to understand why, and to rationalize why things interact, or work the way they do.
Hacking is short term thinking. I’m in a hurry, do this quickly, come back later. It borrows time from future-you, to save time today. But you don’t know when future-you is going to pay the bill. You might find it’s tomorrow (before you ship) – that’s the worst case. And hacks multiply, the more you have, the more expensive each one will be to fix, so here’s the next worst case, you ship something full of hacks, and now you can’t do anything interesting until you unravel them all.
The thing about long term thinking, is that the world is going to be different a year, hell, a month from now than it is today. Long term is an investment in the future, but you have no idea what the future is going to look like. Isn’t that one of the awesome things about working in tech? Everything changes, all the time.
Medium term is the balance, and I find when I think medium term I know what issues will result from that decision, and I know roughly when they will occur. Choosing X over Y will mean that we have to adjust some things, in a relatively minor way, if we do Z, but I’m confident Z won’t be on any of the next few iterations I’m OK with that, but document it somewhere.
Medium term is doing things that will get harder over time sooner rather than later. In this case, Y is a pain, but needs to happen for Z. If we do it now, it’s very easy, and has and intermittent slightly higher overhead for a while. If we wait, it becomes a huge problem that takes someone a long and miserable time to unravel.
Ruthlessly Prioritize
Feature creep is the biggest problem with tight deadlines, and the temptation is always to slip things in because “things are looking so good”.
But why are things looking so good? Because you eliminated so much of this stuff. Because you were ruthless in the first place.
UX wants the widget to slide in and out, but when they realize it is as much work some feature, maybe they will reconsider.
I think it’s pretty easy to eliminate the large things, if you are ruthless about it, you’re clear about how long things take, and your PM and UX people are realistic. The thing to watch here is the small things. I find these are the things that I could fix in an hour or less, and it’s tempting to just agree to them, because it wouldn’t take much more time to write the code than have the conversation – and coding is more fun than having meetings! But I think you get 4-6 hours of good coding a day. So 4 “little things” and you’ve just allocated most of your day away, and were these things the most important things you could be doing?
Maybe not.
Leadership
Give Away The Stuff You Know
It is super tempting to look at the list of things to do, identify the things that you know and could do quickly, and just get cracking on them. You’ll feel an awesome sense of accomplishment, you’ll make super fast progress, and then there will be barely anything left, so that won’t take long at all.
This is complete nonsense. Especially if you have new people who you don’t know. If you give them something you know, you can evaluate how they do it, provide guidance, easily conceptualize it in the bigger picture. If there’s an issue with it down the road, you’ll be able to fix it.
And, importantly, you can instead work on one of your Known Unknowns. And when you’ve figured that out, you give that away too, so you are continually at the boundary of what you know and what you need to do, figuring out how it all fits together. You have the big picture in your head, and enough detail on everything to dive into it at need. Maybe you don’t know anything the best, but you can rationalize about everything, and that is really, really useful.
One of the biggest mistakes I made, that came closest to causing us to miss the deadline, was that I gave away something I only 50% knew how to do. I missed something crucial, and it became an emergency as a result.
This isn’t about being a control freak, it is about you knowing enough about everything, even if there is nothing you know everything about.
Learn Your Superpowers
I learned one of my most important lessons about leadership from someone I worked with, not at the time, a year after the fact.
We worked at a camp, and she was the director. A year later she tells me, “I always used to show you the numbers of how many kids we had in each class, because you would just remember them”. And so she could ask me at any time and I would just know. I could also lay out the classrooms in my head at need.
This, to me, was completely normal, so it didn’t occur to me that not everyone would remember a list of numbers after seeing them. But my friend knew it wasn’t, so she used it to make her life easier, and I never even noticed her doing it.
I think people can be really bad at knowing what they are good at. They don’t always value or notice things that are so natural to them that they don’t realize they are doing them. The more you notice about it, the more you can give people the things that they are fantastic at. The person who has a really good eye for UI flow, and usability, they get that slightly un-specc’d feature. The person who is really stubborn and diligent gets that tedious problem that is going to take patience and bloody-mindedness, rather than a flash of brilliance to fix.
Create a Space
This is about balancing the desire and need to shield your team from the outer world – politics, negotiations, long term planning, and the need to situate what you’re doing in some wider coverage.
Too little shielding, and too many people are worrying about things they have no control over. Too much, and your decisions can seem arbitrary and unfounded.
Some things are “PM problems”. I can’t do anything about them, but I need to know the status of them. I stay out of them and try not to worry about them. I probably want to share that there is a PM problem, when it is clear that it is going to hold something up.
Eng problems I’ll share as they come up. Like, I know it seems like I’ve gone mad on test coverage, but this is coming from these directions and this is why it’s important. I know it’s frustrating that we are doing X, but there is this medium-term plan of doing Y, and investing in X now pays dividends then.
Personally
Don’t Miss What You’ll Resent
I took a day off to go skiing. I knew if I missed it, I would be sad and resentful that I didn’t ski during the winter here. So I went, and it really energized me. Those things if you miss out on, you’ll really miss, you don’t want to lose out on those. Your work is part of your life, it’s not something that should happen at the expense of it. And your life is not something you should put on hold for something that is not 100% under your control.
Don’t Borrow From Tomorrow
My theory of working late is that in the best case I borrow time from tomorrow, and in the worst, I do that and I break things, which I then also need to fix.
So when I feel like I’m done, I go home. I go home well before I start breaking things. One of the things I find as a result, is that I am consistently productive 5 days a week. There’s less of a range. In grad school, I had insanely productive days, and some which were just a write-off. There was so much variance, that it was really hard to know how much I could get done in a given week. Now I have a pretty good idea, and I have evenings and weekend to myself, both of which greatly improve my happiness.
It’s Not Just Hours, It’s Energy
Last Thursday night, my friend and I are in a cab headed out to a comedy show. We were running late, because we’d both been completely absorbed in what we were doing and hadn’t really considered how we were getting there, or even where we were going, and there was terrible traffic.
And we got there, and had a great time, but waiting in the traffic jam, I admit that I think Thursday nights should be reserved for the gym and mall food (the mall food here is delicious, and the mall is only open late on Thursdays).
My friend says “Yes! By Thursday, I have made so many decisions, that if I don’t recharge I have no decisions left for Friday”.
Even the “worst” weeks I had probably didn’t exceed 45 hours. The most stressful day I had, I finished working before 5. But that didn’t mean I had any emotional energy left when I left the office for the day. I was exhausted.
And it’s hard to go out with someone new, when there’s really only one thing on my mind and I just feel like I have no conversation. I have to make more time to do things that recharge me – reading novels, hanging out at the gym watching How I Met Your Mother. The morning after the most stressful day, I went in late because I felt compelled to spend 2.5 hours in the gym before I could face the next onslaught. The biggest challenge I’ve had, is feeling like because I leave the office by 6 I have the time and energy for daily early morning workouts and going out almost every night, and I just don’t. I’d sooner work out in the evening, because it decompresses and de-obsesses me before bed. I want 9 hours sleep when I’m stressed. And that’s OK.
Cookie Consent
We use cookies to improve your experience on our site. By using our site, you consent to cookies.