Today is my first day at temporal and with that I wanted to share some thoughts around my decision, why Temporal and my experience thus far. As you can imagine, making any career change is always a very careful thought process and as we get older, have more responsibilities, the gravity around those decisions becomes stronger.
After IBM acquired Red Hat in 2018, I had the opportunity to visit the IBM research and development lab in Boeblingen, Germany. The idea was so RHatters could learn about some of the IBM history and why mainframes even today are great, at least with Linux. As you can imagine, I was more than skeptical. We spent years modernizing monolithic applications and moving workloads to Linux. Mainframe technology was a dinosaur that predated anything I ever worked on and as such I dismissed it, what could I possibly learn? Even once we arrived at the facility; the gray, lifeless, government looking buildings exhumed anything but innovation or creativity.
Of course as the cliche goes, Looks can and are deceiving. Our minds judge everything and blind us if we let them. So what did I learn on that day? Reliability, you can shoot an IBM mainframe with a high-powered weapon and it will continue to run. That is why still today, well into the era of cloud some of the most critical computing workflows (government, banks, aviation, insurance and healthcare) are still done on mainframes. One of the challenges with cloud-native is of course, reliability across many disparate services. Monolithic environments are simply much easier to control and anticipate. Developers are left to solve reliability on their own with 10s or even 100s of microservices potentially involved in a workflow. Of course, this ends up being a lot of code, technical debt and reliability is never quite certain, certainly not to the level of a mainframe.
Temporal is solving this problem through a workflow-as-code approach. Handling workflow state, execution, retries and allowing developers to orchestrate microservices into a workflow that is reliable as running water. It is a simple purpose with enormous potential. What could we accomplish if we further increased reliability of cloud-native applications and even started to modernize legacy applications shackled in their moorings? That has me extremely excited!
Still it is one thing to have great potential but it isn’t worth that much if you can’t execute. It is far better to have great execution of a poor plan, than poor execution of a great plan. At the end of the day, execution comes down to people and the will to overcome adversity or whatever else gets thrown in the way. My interview process at Temporal was not an interview at all. It was a conversation involving sharing ideas and thoughts bi-directionally. Everyone I met was passionate, focused, professional and curious. All seemed united, being part of the same cause but each with their own role to play, led by their passion.
While I needed to understand Temporal’s purpose, believe the vision could be executed, there is still something more. For me, especially coming from Red Hat, the technology needed to be opensource. I saw a great interview with Maxim Fateev (CEO of Temporal) where he explains the reasoning why Temporal needs to be opensource? He says that anything developer orientated today, needs to be opensource or it simply won’t be seriously considered. This was not only reassuring but also gave me great satisfaction in just how far opensource adoption has come. The problems of today are simply bigger than any one company and opensource is the only way to collaborate together across organizations, to solve them.
The Right Fit
Finally the role also had to be the right fit. I had a desire to get closer to developers after being mostly on the platform side the last 7+ years. I am in fact a closet software hacker, it is one of the things I do for fun. The solution architect role at Temporal required someone of course with pre-sales skills but also software development skills (a less common combination). Temporal is consumed through an SDK by developers and as such being able to provide recommended practice or guidance to help customers also means understanding the code. I have long waited for a pre-sales role where my software development skills and passion were not just an asset but a requirement.
My Experience So Far
It might seem odd to talk about experience when this is literally day one but there is actually a lot to talk about. I have been on Temporal’s community Slack for several weeks. Following some of the discussions and after I accepted an offer folks started to reach out. Even asking for my feedback or ideas about certain things. I attended a pre-screen of a 101 training session that will be presented at Replay, Temporal’s first user conference August 25-26 in Seattle. I even got to provide feedback all before my actual start date. I have had my laptop now for about two weeks which I am proud to say runs Fedora 36 (Gnome 42) and the Friday before my start date I had all my accounts setup. It is day 1 and I am ready to rock!
In this article I discussed thoughts around my decision to make a career change and pursue a new opportunity at Temporal. I am extremely excited about taking my first steps on this new journey and cannot wait to discover what is around the corner. I hope that my perspective may be of help, in your career or life journey.
(c) 2022 Keith Tenzer