"I would love to do THING_X, but I just don't have the time."
This is a nearly universal sentiment among software developers that comes with plenty of bad feelings attached.
Feeling bad is no fun, so try a few of the dozen ideas below for improving the quality and quantity of free time you have in your life:
Defrag your work schedule. Lump meetings together on the same day when you can, or in some particular time block each day. By doing this, you'll cut out on the wasted time that comes with frequent context switching.
Do chores and routine tasks during gap times between meetings, collaborations, and deep work sessions. This is time where you're going to feel distracted anyway, so don't waste that energy on something important.
Carve out space for self-directed learning and practice time at work. In some workplaces, you won't even need to ask, just put it on the schedule and stick to it. In other workplaces, you may need to negotiate but any little bit helps. Could be "The last hour of the day", or "Fridays after 2pm", etc.
Write checklists for any repetitive tasks you do daily or weekly, and then try to simplify how you do those things. But even if you can't simplify, working from a checklist will reduce the cognitive load of doing those tasks, and also reduce time lost to making mistakes.
Whenever there are easy and obvious ways to automate some part of your daily work, go for it. (But remember that very cheap partial automation is often better than expensive full automation)
If you have a long commute, try to negotiate some work from home days, even if it's only 1-2 days per week.
When you do have to commute, look if there are options to take a train or bus, even if it is a little slower than driving. Then use that time to study something you're interested in or do various chores that you'd otherwise not have had time to do.
If you must drive, audio books and podcasts are an option. These could be but don't necessarily need to be work related. This time might be a great time to learn things that'll make running your household easier or will bring you deeper into one of your hobbies.
Try completely avoiding TV, video games, social media, and random internet browsing at least 1-2 days per week. Or alternatively, set aside a 1-2 hr period daily where you'll avoid doing those things at home. Your mind will naturally wander to more productive and fulfilling ways of spending your time.
Pay close attention to your energy levels day-to-day and begin to schedule your work in a way that works with rather than against your typical patterns. It's better to get something useful done that's lower priority than to sit and struggle with procrastination about a higher priority activity that you're simply not in a good state of mind to work on.
As much as possible, try to organize your life around things that complement one another rather than compete with one another. In particularly, don't try to learn 20 unrelated things at once. Pick a handful of things that all connect together in some way, and any time spent learning one subject will benefit the others.
Perhaps the most important idea: Change your relationship to time so that you focus on working with what you have instead of feeling bad about not having enough. Small and slow progress is still progress, it just means you may need to wait a little longer to see the results you want. But that is 1000x better than avoiding starting on that thing you really wanted to do in the first place.
Hope those ideas help!
If you've got your own suggestions to share, please leave a comment.
Or if you have tried as much as you can from the list above and STILL feel like you don't have enough time in your life for doing what you want, leave a comment explaining your situation and I'll see if I can come up with new ideas for you!
The software industry moves fast. But if you keep up, you can have an incredible career.