Next in our Meet the Team series is Stefan Prodan. Stefan is another one of our super talented Developer Experience Engineers. He spends most of his time here at Weaveworks integrating and testing different open source projects with Weave Cloud and blogging about it. He’s passionate about all things Cloud Native, programs in Golang and has a soft spot for Prometheus as well as OpenFaaS serverless technology -- where he is a core contributor.
Stefan is one of the presenters and instructors at the “Your Path to Production-Ready Kubernetes” workshop on May 1st at KubeCon Europe in Copenhagen.
Five Questions for Stefan Prodan
What does a typical day look like for you and what are you currently working on?
My morning starts by having an espresso with cinnamon, and Twitter. I work remotely from Bucharest so I have a one to two hour head start on my colleagues in Berlin and London.
‘Till Slack gets busy I usually do some coding on open source projects or various integrations around Weave Cloud. Before noon I try to follow up on eMail and check Slack. There is always something going on in Slack, be it the Weave community, OpenFaaS, Kubernetes or Docker. I enjoy helping others and learning something new along the way.
Engaging with like-minded people from all around the world is part of my job and I love it. After lunch I try to focus on a single task, for example this month it's all about GitOps and Istio. Late in the afternoon I'm in meetings with different Weavework teams or OpenFaaS contributors.
Any words of advice for others trying to learn about containers and Kubernetes?
There are many ways to get started with containers and Kubernetes, my way is to read code, write code and keep experimenting. If you are new to containers start by making a little web app, try to build it in a container, you'll learn about Dockerfiles; afterwords try to run in on your local machine with Docker.
Once you’ve got that sorted you could look at the Docker engine API and write some code to interact with it. Once you feel comfortable with Docker engine you can turn on Kubernetes with a click of a button in Docker for Mac or Windows. Kubernetes can be overwhelming at the beginning, read about deployments and write a basic deployment definition for your app. After you got your app running, gradually go through all the Kubernetes primitives and make changes to your app to take advantage of what K8s offers. The Kubernetes community is very friendly, if you get stuck don't hesitate to reach for help there is always someone willing to give you a hand.
What’s your top 3 Talks/Books?
If you want to get a grip on the Cloud native approach I would recommend reading "Cloud Native Infrastructure: Patterns for Scalable Infrastructure and Applications in a Dynamic Environment" by Justin Garrison and Kris Nova and "Designing Distributed Systems" by Brendan Burns.
If you haven't read Eric Evans book form 2003 on Domain-Driven Design you should definitely try "Domain-Driven Design: Tackling Complexity in the Heart of Software".
The ‘DDDesign principles’ are even more relevant now with microservices and the DevOps movement than they were 15 years ago.
What do you wish other people knew about Weaveworks?
I wish that our open source projects that Weave Cloud is based on: Weave Flux, Scope and Cortex are as popular as Weave Net is today.
Changing the mindset around running production systems will take some time but I hope Kubernetes and Weave Cloud adoption will make the GitOps approach to operations mainstream some day. Since I started with Go I dreamed about joining a team whose primary language is Golang and who are actively involved in open source. That dream came true at Weaveworks where I am surrounded by awesome people.
Any favourite cool new technologies you’ve been looking at lately?
One of my favourite technologies that recently surfaced is Functions as a Service (FaaS). Last year at DockerCon in Copenhagen I met Alex Ellis, the founder of the OpenFaaS project and since then I’ve been contributing regularly to the project.
I think there is a lot of potential in a language agnostic FaaS platform built on top of Kubernetes. It abstracts away the complexity of the orchestrator and empowers the developer to innovate whilst being free of vendor lock-in and able to move to any cloud. What I really like about OpenFaaS is the energy and enthusiasm of the community. I’ve seen people running OpenFaaS at home on their Raspberry Pi clusters, but also in the industry where teams have used it for medical research and also to replace microservice architectures.
Another project that I like a lot is kubegen created by my colleague Ilya. Kubegen is a versatile tool that lets you define reusable modules which you can bundle together to generate Kubernetes resource definitions. With kubegen, we were able to provision various workloads on multiple Kubernetes clusters for our workshops with minimal effort.
If you are planning on attending Kubecon EU this year please visit the Weaveworks booth, register for our workshop, “Your Path to Production-Ready Kubernetes” or join the Live Kubernetes Office Hours at KubeCon on May 4th, 11:55am