This month, we’re shining a spotlight on CNCF Ambassador Alex Ellis, the creator of OpenFaaS, an open source serverless platform on the CNCF Landscape. But that’s just the tip of the iceberg of what Alex has contributed to the community. You may also know him from the numerous other open source projects he’s created, as well as the tutorials he’s written and the talks he’s given.
Alex answered a few questions about how he’s helping companies and individuals understand how CNCF projects fit together and when to adopt them.
What led you to the cloud native community?
I’ve been working with software for most of my career now with a strong focus on engineering and on architecture. The first half was focused on the enterprise with proprietary software, and the second half has seen me learn programming languages like Node.js, Golang, Python, and Ruby. I see this as a kind of renaissance for my career, and it was the catalyst for me creating OpenFaaS.
OpenFaaS is one of the most popular open source serverless platforms on the CNCF Landscape, but it actually started way back in 2016. I wanted to build functions in containers instead of zip files, and to run them anywhere, not just on within cloud-based platforms. Today there’s been hundreds of contributors, and the community of end users and developers is thriving — it’s the highlight for me.
Cloud native took over my career, and now I spend most of my time consulting with companies that are adopting Kubernetes or cloud computing and helping them speak to developers about their products.
How did you get more involved in the community?
My first touch with cloud native was with Docker; I’d created a series of training courses and was invited to be a Docker Captain. After that I moved my focus to Kubernetes and other CNCF projects and started learning about them and writing beginner and intermediate tutorials along the way.
As I’ve helped users, I’ve created various other open source projects for solving problems users run into: k3sup.dev helps users bootstrap Kubernetes fast, arkade is a tool to install Kubernetes applications using Helm, and inlets is a Cloud Native tunnel to open up any internal services you may have to the internet.
Why did you become a CNCF Ambassador?
Whilst I don’t run a meet-up group, I do spend a lot of my time writing tutorials and speaking about the various CNCF projects and make heavy use of them in OpenFaaS, such as Prometheus, Linkerd, NATS, and Kubernetes.
My goal is to help companies and individuals understand how CNCF projects fit together and when to adopt them. For a recent consultation, the best advice I could give a friend was to make investment in hiring DevOps talent, rather than taking on Kubernetes too early. Being independent, and not paid to push certain products, means that I can give impartial advice and help people pick the right solution for them.
One of the highlights of the year for me is KubeCon — being able to network and connect with so many other people working on similar problems and to collaborate with them.
In your experience, how has CNCF been helpful to you as an individual not working for a large company?
Running an independent open source project and business can be an uphill struggle at times, so any support is appreciated. CNCF offers discounts for events and training courses to CNCF Ambassadors, which would not normally make much difference to an employee at a FAANG company, but can be the deciding factor for someone who is funding their own way.
What message would you like to send to the cloud native community?
Adopting cloud native technologies can be challenging, and at times, you may find yourself feeling confused or out of your depth. I think that’s a natural feeling, but it does subside. I didn’t learn everything overnight. Starting out with a clear problem statement and exploring the more obvious options should be first of mind. If you are unsure whether you should adopt containers, serverless, service mesh, or all three, then the community and many independent businesses are here to help you make an informed decision.