I wake up at 4:45 a.m. Every day. No matter what. This can be a blessing and a curse – but for me, this time is sacred. It’s that moment of quiet before everyone else at my house wakes up. Today, I check my phone for any texts from the night before. Sure enough, someone’s organized a 5:45 a.m. basketball game at the gym. I started playing again a couple months ago, and if we’re not playing an early game, I still head to the gym on my own.
Some days I work remote, but I’ve been coming in to the office a lot lately. I catch the 7:25 a.m. train out of Geneva and reserve the first part of my ride for the important stuff – zoning out, putting on the headphones even without music. You know, more sacred quiet time. After sufficiently spacing out, I get a head start on my day for the rest of the trip. This usually consists of responding to emails, reviewing timesheets, staffing, forecasting. I’m in and out of Webstorm/IntelliJ, Outlook and the Reminders app for iOS and macOS. I couldn’t exist without the Reminders app. I get the logistics done early so when I get in to the office I can get straight to the “fun” stuff, like coding!
When I pull in to the office, I check the status of an in-house project. With the help of some folks on my team and others, we’ve been building a microsite to support a campaign put on by Rebecca, our marketing director, and her team. It’s a MEAN-stack app that runs in a Docker container on Azure. After making some edits to the microsite, I check in on a project with one of our longtime clients. We work with one of the world’s largest consumer data and insights leaders, helping them with a variety of initiatives like custom development, business intelligence, and scrum masters. Lately, I have been working closely with their development teams on adopting DevOps practices.
By mid-morning, the day is in full swing but it’s time to pause and meet with the folks on my team. I’ve been at SPR for seven years and head up the Open Source Application Development practice. I’m very proud of how our team has grown and where it’s headed. I’m surrounded by some smart people – 20 full time and another dozen contractors – so I’m always learning.
I spend the rest of the morning in internal and client meetings. For the research data client, I am using a terminal window working from a command line, but I also use IntelliJ to work on DevOps-related concerns of Java and Scala projects. I generally build scripts written in Maven or Gradle, plus some work with configuring automated testing tools. I also spend some time in Jenkins today, creating and troubleshooting build and deployment pipelines.
I usually eat across the street from the Willis Tower at Roti or Protein Bar. They’re fast. I generally eat fast. It’s a great match. But today, there’s a Show and Tell lunch in the office where anyone at SPR can share innovative projects they’re proud of – work-related or personal. This month, I’m on the agenda to present an adaptation to the office kegerator. At SPR, we can’t simply install a kegerator. That’s just not enough for our “build” mindsets. So, I added a flowmeter using some simple hookups to measure liquid level and temperature. A propeller in the keg spins and clicks as liquid pours over it. Each click is a milliliter, so I can “listen” to the clicks and measure how many beers are left in the keg. I also track what’s on tap and its temperature. When the beer temperature alters or liquid gets low, it will automatically trigger warning lights on the keg and the app dashboard. With our flowmaster, the SPR kegerator will never go warm or run dry.
After wrapping up lunch, it’s time to check back in with our big data research client. It’s a great group of people and I enjoy working with them. But the client is a global company, so my contacts are all over the world. After more than a year, I still haven’t met some of them in person! I fire up Google Hangouts for a quick meeting with the client team to talk about their current source code migration to Bitbucket and git adoption, among other things.
After the meetup, I pop in the headphones for some background music as I focus on writing code. My musical preferences are scattered. Lately, I’ve been listening to classical music which is way out of character. The new Tribe Called Quest album is in regular rotation along with old standbys – Phish, bop-era jazz, classic rock, and last week’s Essential Mix on Radio 1.
Time to catch the 5:04 train home. It’s an express train (translation = crowded), but it gets me to Geneva in less than an hour. I pull open the laptop to finish off any last tasks for the day, then switch over for a little of the Godfather. I recently finished the trilogy, and just started watching it again. Yes, again. I’m home in time to have dinner with my family, then off to the kids’ various activities – baseball, soccer, basketball, piano.
Time to head to bed, ready to live the dream again tomorrow.