· Travis Rodgers · Life · 16 min read
40 Lessons About Life From a 40-Year-Old Developer
In step with turning 43 this year, I’ve decided to share 40 Lessons about Life that I’ve learned as a 40-year-old developer. Yeah, I know, 43 is not 40, but 43 just isn’t as catchy.
And we’ll break these up into 7 sections, Relationships, Finances, Career, Programming, Fitness, Lifestyle, and Time, in that order.
If you’d rather watch the video, then here it is:
Otherwise, keep reading.
Relationships
1. Stop trying to act like one of the young guys (or girls) in your company. You’re past the folly and silliness of that age; don’t try to be like them again. You’re distinctly older, more thoughtful about your words, and shouldn’t try to join in on immature banter. Stand out as an older man or woman because that’s who you are.
2. Try to answer people with a yes or no, at least with some sort of definitive answer based on what you know. As Tim Denning once said, honesty is direct, dishonesty is often indirect. You don’t want to be known as a dishonest person. If you know you can’t make an event or attend a lunch, don’t do an UMM or a WELL MAYBE; just do a No, I can’t make it today. Be that person.
3. Every person gets 24 hours a day. After sleeping, 16. After working, 8. Don’t waste those gaming, watching Netflix, or scrolling on your phone. You’ll blink, and 10 years will pass. Take those 8 hours and learn a new skill, or spend more time with the people you really care about, your wife, kids, family, whatever, or meet up with friends, make memories, minimize future regrets, and make that time count/ Got goals, use these extra 8 hours a day to meet them. Just 3 of those hours a week will give you 15 extra hours to put yourself in a better position financially in your career or in your relationships.
Finances
4. Everyone should have multiple streams of income. This is essential, especially in this economy. A little bit coming from here and there that adds up. Investments, side jobs, passive income, crypto, dividends, real estate, whatever… It is 100% okay to work a 9-5, don’t let anyone tell you otherwise. HOWEVER, this should be one of a number of sources of income. This is the 21st century, we shouldn’t keep thinking that we’re in the 20th.
5. Learn how to manage your money and grow it. You will be making good money as a software developer, often before you have the wisdom to handle it. Learn to budget your money ( I use YNAB for this; it’s an app for budgeting your money; link below ), live by that budget, and invest the rest in things that grow it.
6. Be cautious about how much you put into a 401K. There are tax advantages, but it’s slow growth; you can’t touch it until you’re old, and in the grand scheme of things, cash flow is more important. When you get old, it’s good to have a large sum to live off of, but it’s better to have, say, 10 rental properties paying you 6K a month, every month until you die, and then you can leave them to your kids. And just a wild example, if you had 100K in Bitcoin at the beginning of last year instead of being in a 401K, it would have been worth 436K today. In a little over one year. No, a 401K isn’t a scam, but just be careful how much you rely on it to save you one day. (not financial advice)
Career
7. OK, this is a hot take. TURN YOUR WEBCAM ON. EVERY TIME. Leaders of teams and those who excel seem to always be quick to turn their webcams on in meetings. Followers and those who don’t really actively pursue advancement keep their webcams off. It hurts, but you know this is true.
8. When you go to coding interviews, remember that the interviewer is human like you. Maybe their son is giving them some trouble at home, they are having marital problems, their car is in the shop, or they are struggling with some sort of depression. You are also human and don’t have to sit there like a wet cat begging for a job. Remember that he or she is also human. Then, have a human-to-human conversation.
9. Always keep your LinkedIn and options open to other job offers. Do interviews every now and then, regularly. SEE where things take you, regularly. You shouldn’t be married to your job. I’m 100% certain that your job is not married to you. The average tenure of a software developer is 16 months. Don’t act like you’re going to be there for longer than that. Thus, keep your options open. Maybe try for your dream job while you’re at your current job? You already have a job, so you aren’t losing anything by trying. Also, a new position at a new company is the fastest way to a salary increase that could take you a decade by staying at the same company.
10. Dont let people, especially management, walk over you at work. You’re not that easily going to be fired. In fact, management often likes people who are more direct and in being more direct, you are perceived as more trustworthy. “Sorry, I have to leave by 5 today.” “That feature will take much longer to build than you have estimated,” “I don’t think that is a good idea,” “I can’t that on yet, as I’m currenlty working on this”. Be direct, from adult to adult, and you’ll find yourself much more appreciated.
11. Remember that the software industry is vast. Throughout your career, your interests will change. When they do, don’t be afraid to shift into a new position of that new interest. One reason, among others, for burnout is doing the same thing over and over. To have a healthy and vibrant life career as a software developer, you need to be moving into positions that you become interested in over the years. Maybe from developer to project manager, then onto cloud architect, then on to solutions engineer, then on to AI researcher, who knows? But don’t stay in a certain position for 30 years dreading what you do. Shift around as interests come and go.
12. Spend money on books, courses, and personal development. Set a budget for this. I have a dedicated video on this, which I’ll link below, but keeping yourself educated and investing in a life of learning is KEY to success in life. ALL the greats will tell you the same thing. Get a Kindle, carve out time to read, keep up with the latest trends via newsletters, and read books to become better at communication, soft skills, marketing, and whatever makes you a happier, knowledgeable, more marketable person.
13. Making a lifestyle of Networking is one of the most important things you can do. Meet new people, join others for lunch, remember people’s names, think of them regularly and keep in touch with them, help them if the opportunity arises, and they will help you when you need them or often when you don’t even know you need it. I also have a video on this, link below.
14. Being a good developer will get you a job and positions in A COMPANY. Developing your soft skills will open many more doors within THE INDUSTRY. Many people can code. AI can code. But can they speak, persuade, and charm like you? Be sure you’re not underbalanced here.
15. BE ACCOUNTABLE. If you made the mistake, own it. BUT don’t bask in that mistake. Instead it’s then your job to find a solution to it. Be this sort of person. A solution minded person. Own the mistake, then take ownership of finding or helping to find the solution.
16. Instead of being a programmer who waits for the next tasks to be assigned, take time to dive deep into the WHYs of your company, project, or contract. Try to learn about the customer, why you’re building what you’re building, and how things work on a deeper level. Be able to talk about those things in your meetings or explain the WHYS to other developers. Gaining this domain knowledge is one of the quickest ways to move up in your company and prove your knowledge in this industry. It’s what makes senior-level and principal developers and managers. If not, you’ll stay a “coder” and will be easily replaced.
Programming
17. Practice the art of pseudocoding. Try to map out what the code will do or should do before you even write any code. If you get this down, then it’s just a matter of syntax.
18. It’s good practice before you push your finished branch up to GitHub, merge in the latest changes from the master first. This way you can handle any conflicts locally and not after the fact and also to be sure that your code still works with the changes that have been made by the team while you were coding in your branch.
19. Always pad your time estimates for coding features. Almost always, something will pose a problem and make you miss your, already unattainable deadline. When you are in your standup, and you go to give an estimate, give double. And don’t think this makes you look bad, or slow. All the people in management know the drill. Don’t be the only one who doesn’t.
20. If you’re self-taught and haven’t read Grokking Algorithms, go and read it. It’s free online, just do a search. The concepts in this book will tie all of your missing links together. You’ll learn how to optimize your algorithms with BigO, you’ll learn recursion, data structures like hash tables, arrays, and linked lists, and how they work under the hood, graphs, and the most important search and sort algorithms. If you want the video versions, then check out my course in the Travis Media Community, where I’m teaching chapter by chapter through the book. I’ll put a link to it below.
21. As a software developer, remember that you are a problem solver more than you are a coder. Writing code is easy. There’s documentation for that. Solving the problem or problems efficiently and without bugs is what you really get paid for. There’s a quote that says, “Prolific developers don’t always write a lot of code, instead they solve a lot of problems. The two things are not the same.” First, solve the problem. Then you write the code.
22. You are not in a skill match with your fellow programmers. Stop thinking of them as a threat to your intelligence just because they are better than you or because they will find out that you are an imposter. There will ALWAYS be better programmers than you. They’ll have skills that you just don’t possess. It’s okay. It is what makes the whole clock tick. Take a day to get outside and have a talk with yourself, find out who you are and where you are at, and make a plan to ACCEPT THAT PERSON as they are, as you are. Then, be confident in the stage of programming you are currently in, and then, with new eyes, look at others as people to learn from and others as people to teach.
23. Take on hard tasks at work. When you’re in your standup, and you’re waiting for that one easy task to grab, instead, grab the hard one. You’ll struggle, research, and get frustrated, but you’ll grow so much by having to do the hard work. Patrick McKenzie once said, “Every great developer you know got there by solving problems they were unqualified to solve until they actually did it”
24. When learning to code, watch tutorials, take courses, yes, but these are not equal to getting hands-on. What all aspiring developers need to do is to take on at least ONE substantial project, one that they come up with and map out, and see it through to completion by reading documentation, running into problems, solving bugs, and refactoring all on their own. They will come out of this with way more knowledge than following along in more instructor-led courses. As the mathematician Alan Turing said, “Programming is a skill best acquired by practice and example rather than from books.”
25. As a programmer, especially a new programmer, DON’T LOSE SIGHT OF YOUR HOBBIES. Don’t code 24-7. Get out, bike, run, hike, grill out, play games, whatever, but be sure that you have some sort of life outside of coding. I have a whole video on this, I’ll link to it above. Don’t let coding define WHO YOU ARE. Let it be something, among other things, that you do. Otherwise, you’ll eventually have a meeting with the dreaded Mr. Burnout.
26. There will ALWAYS be bugs in your code or things you didn’t consider. If there wasn’t, half of us would be gone. When you find a bug, this isn’t a time to interrupt everyone on your groundbreaking new finding. Create a task for it and prioritize it if needed. BETTER Than the bugs is a system in place that lets you troubleshoot and fix (like writing tests, logging, and a good CI/CD pipeline)
27. When you’re talking with a customer, NEVER PROMISE ANYTHING before talking with your team first. No matter what stage it’s in or how much confidence you have personally, always say, let me check with my team on that. Keep a safe, blurry wall up between yourselves
28. I know this is cliche, but you only learn by making mistakes. As new developers our #1 goal is to not make mistakes. We’ll cheat, hide things, and put on masks just to conceal that we know what we’re doing. But mistakes will be made. Accept them, and then be sure to learn from them so as to not make them again.
29. Don’t hesitate to tell your coworkers to create a new ticket for their issues when they come to you with their questions or problems. YOU also have tasks you have to complete, and you have to, at some point, focus on getting these tasks done, if you have to often jump to the aid of others to help them with new issues or questions, you can’t get your own work done. When they say, “Hey, I pushed some code, and I think it may have messed up such and such,” or “I can’t get this service deployed correctly, and I need you to come and help me, or jump on a call with me” calmly ask them to create a new ticket and maybe prioritize it for someone to take on next, and let the process put in place handle the issue, instead of stopping what you are doing again to help them out.
Fitness
30. Your health is your #1 priority. If you’re well physically and mentally, you can work, and you can make money. Your Health is the gateway or portal to enable all other priorities.
31. Sitting all day is a KNOWN problem. It’s not debatable. You will be bedridden by 60 or even 50. Knowing this, you MUST get a standing desk, find a way to stand more, or find another career.
32. Drink more water. Most people just don’t drink enough water. Your headaches, fatigue, brain fog, and other symptoms could just be that you’re dehydrated and need more water. I keep a big mason jar on my desk, staring me in the face all day to remind me to do so. Do the same.
33. Work out at least 3 times a week. There is no excuse. You get one body, and you can shape it to be something, or you can let it become something you don’t like. So many problems we have as humans go away with regular exercise, not only physical but mental. And it’s simple. Walk daily. Do pushups, pullups, dips, squats, jumps, burpees, whatever, but do it at least 3 times a week. No weights are needed. YOU KNOW YOU HAVE TIME. AND THIS TIME SPENT WILL GIVE YOU MORE TIME IN YEARS TO LIVE.
34. Get outside. Get some sun on your skin, daily. Benefits from nurturing your circadian rhythm to vitamin D to just making the body feel alive again are vital. In many countries, this is common sense, but in the Western world, especially those with desk jobs like us, we need to be reminded.
Lifestyle
35. Never boast of being fully remote if you never travel. The original goal was to be able to work from anywhere in the country (or the world) and being fully remote allows you this. Don’t then betray yourself by not taking the opportunity to work from other places. Travel to another state for 2 weeks, or another country for a month Work from there. Take your family. Why not? Wasn’t that the goal?
36. Try to do one hard thing every day. This could be getting up early and running. Not because you need to run, but because it forces you to do something against your comfort. How about asking a coworker to lunch? I know… you want to be left alone with your bologna sandwich, but you’ll do so solely because you don’t want to do so, and in that interaction, you’ll find more success and fulfillment.
37. Try to save your easiest and shortest tasks for the end of the work day. Meaning don’t be pushing your code at 5 p.m. before you leave, or even 4 or even 3. Save it for the morning. The reason is that you don’t want to do anything at the end of the day that may prohibit you from leaving on time. You want to wind down and be done. Perhaps this means saving replying to emails or documenting things or some meetings for the end of the day.
38. Programming is a mentally taxing job. Therefore, max out your PTO or paid time off. If you have sick time, don’t be afraid to use it, even if you just feel a little bit under the weather or just need a day to get back on your feet. Don’t trade your PTO for money at the end of the year; use it. Trust me, use it ALL.
Time
39. Ultimately, your boss doesn’t care about you. They care about the budget and their own boss. Your politician, president, checkout lady at Target, guy stocking the shelves, none of them care about you. But your family does, your friends do, so be sure to give priority and care to the right people.
40. An unchecked life will pass in a flash. If you’ve listened to my story (I’ll link it below), before learning to code I took a job at a hospital temporarily as I looked for something better. And 10 years passed, at that same job. If you let your days, months, and years go unchecked, unchallenged, without goals, you will wake up an old person with many regrets. Take time to evaluate your current situation, regularly. If you’re comfortable, you’re probably overdue.