Hi there, I'm John East

Cancer and frameworks

2025-08-15
healthengineering

I've got to be honest, this blog post is not the one I had planned to write next. I was going to dive into how I built my chatbot, and I still will, but this topic feels more pertinent right now.

You see, 2025 has not gone according to plan. I started the year with a solid job, but by the end of February, I found myself on the job market, searching for work and facing interviews, which I absolutely hate. Fortunately, after a short snowboarding break, I landed a new role as an engineering manager within a couple of months. I was thrilled. I signed the contract and looked forward to starting my new position and getting to know my team. However, during this time, I started feeling unwell and underwent scans and tests to figure out what was wrong. The week after signing my contract, I received shocking news: I had a tumor in my esophagus. Wait, what?

F*ck cancer

The timing could not have been worse. I had just landed a job I was excited about and wanted to excel in, only to be hit with this diagnosis. What was I supposed to do? The surgeon, however, seemed oddly upbeat. He walked into the room, sat down, and opened with, "Good news, we found the tumor!" No one had mentioned a tumor before, so his version of good news and mine were clearly worlds apart. More tests were needed to determine its size and whether it could be removed. So, I started my new job and immediately had to inform my lead about a slew of upcoming medical appointments, which I felt terrible about. She was incredibly accommodating and understanding, though. The job was going well. I was learning the ins and outs of the company, bonding with my team, and helping shape the direction of the new project we were building. I was happy, and the company seemed pleased too. Then came the test results. The tumor could not simply be removed. The only course of action was an intense 12-week regimen of maximum-dose radiation and chemotherapy. To be honest, I could not believe this was happening to me. There were a lot of tears that day.

The next day, I was in the office (the company operates on a hybrid model). During a one-on-one with my lead after lunch, she started asking about my assessment of the team and what skills we might need to hire for. I had to stop her and share the news. I had only been with the company for a couple of weeks, and already I was telling them I was seriously ill. I felt awful and worried they might think I had known beforehand and joined just for the medical benefits. I need not have worried. My lead assured me that the company would support me in whatever I needed to do. In that moment, I felt like I had joined a family, not just a company. I wanted to keep working during treatment as much as I could. I needed the distraction. Time off for appointments was not an issue, as long as I kept my calendar updated. I managed that for about two weeks. The fatigue from radiation, combined with the chemotherapy, was overwhelming and started to hinder the team rather than support them. In the end, I had to take extended sick leave. That was late May. It is now mid-August, and I have been off work since then. If I am honest, I sometimes feel like I have let my employer down, especially since I was just starting to make an impact when I had to step away. But personal health has to come before work.

Live in the moment

I cannot lie: the past 14 weeks have been brutal. The radiation treatment was intense. My radiation oncologist kept saying he was hesitant to administer such a high dose, noting that in his 200,000 or so patients over the years, he had only used this dosage five times. But since I am young and strong, he figured, "Why not?" Thanks, that really boosted my confidence. Early on, they warned me that radiation would make me tired. That was an understatement. At its peak, I was bedridden, barely able to move. The radiation lasted five weeks, with daily hospital visits on weekdays. On top of that, I had chemotherapy every two weeks. The chemo was supposed to last 12 weeks, but hospital stays and low platelet counts caused delays, stretching it to 14 weeks. It is hard to describe how chemotherapy feels. If you have been through it, you know. The best way I can explain it is that you feel alien in your own body, and your brain does not work as it should (apparently, it is called chemo brain). Oh, and I could not eat solid food. I had to be fed through a tube attached directly to my stomach. All in all, fun times.

Treatment is finished now, and I am a little over a week past my final chemo infusion, so I am starting to feel human again. Reflecting on this experience, one lesson stands out: appreciate the present moment. The past is just a memory; it does not exist. The future has not happened yet; it does not exist either. All we have, and all we should focus on, is this moment. There were times I worried about what might happen to my partner and daughter if the worst came to pass. There were moments I overanalyzed the past, wondering what I had done to cause this. Neither of those served me well, so I let them go. Instead, when my partner held me, I chose to be fully in that moment and be grateful for it. When I received messages of love and support from friends, family, and colleagues, I chose to sit with those messages and feel the love they brought. The present moment is all we have. It sounds trite, but it is true.

Code in the moment

I was chatting with a developer friend the other day about what he is working on. He was experimenting with react-router and considering approaches different from his usual GraphQL-heavy methods. He said he was enjoying it but was also stressing about best practices and which patterns to use. My advice? "Just write the code you need and nothing else." His response: "Hallelujah! That is what I needed to hear today." This was followed by a few GIFs of the Mandalorian saying, "This is the way," but that is beside the point.

As engineers, we learn about patterns and frameworks, and it is easy to start seeing design patterns everywhere. The developer community can make you feel like you need to follow every best practice perfectly, or you are not a good engineer. But truly great engineers write only the code needed to get the job done because they know user impact is what matters. I cannot count how many times I have built a mini-framework to future-proof a feature for use cases that might arise, only to revisit the code months or years later and find that the original use case was all that was ever needed.

You see, all we have is this present moment.