We are waiting for Yan Cui at DevExperience for quite a long time, so, now that he is really coming, we have made sure that he will share as much as he can during the event! That is why Yan will have 2 talks at the conference and 1 workshop the next day! And that is why we also sent him some questions to get an online preview of his activity at DevExperience.
So enjoy this blog interview with Yan Cui and make sure you register for his hands-on experience workshop and attend his amazing 2 talks on the day of the conference!
DevExperience: What did you want to become when you were a child?
Yan Cui: A manga artist. I used to draw, a lot!
DevExperience: What have you learned about IT people from different cultures while traveling the world with your work?
Yan Cui: I find that developers everywhere are generally passionate about technology and want to do the right thing. It's easy to take for granted, but we are lucky to do what we're passionate about for living and are well compensated for our efforts.
DevExperience: How did you end up doing serverless? What attracts you to it? And why do you think it will be the future?
Yan Cui: It was a good fit for what I was working on in one of my previous companies. I was building a social network and most of what we were building fit really well with serverless. With serverless we were able to offload all the plumbing to AWS and focus on building the features that differentiate us as a business. That was such a liberating experience, after spending much of my career dealing with infrastructure and plumbing. I've always wondered why I had to do all these yak shaving just to get to the things I actually wanna do - to build features my users have asked for. And serverless was exactly what I have been looking for.
DevExperience: Does serverless require a different way of thinking regarding delivery, performance, security, monitoring compared to VMs and containers?
Yan Cui: Yes. That said, a lot of the fundamental principles still apply, but how we apply those principles needs to adapt to a different set of constraints and opportunities.
Take monitoring for instance, we have built a whole ecosystem that relies on running agents/daemons on the server and that's no longer possible in the serverless world. And while we still need to monitor latency and error rate and many other metrics, it just doesn't make sense to monitor CPU utilization anymore. In general, it doesn't make sense to monitor infrastructure and instead you should focus on monitoring application level metrics and emerging properties such as message flow rates between systems.
DevExperience: You have a well known blog full of interesting articles on serverless and you authored some great courses on the same subject and a book on F#. When do you find time to do all these?
Yan Cui: I think if it's something that you're passionate about you'll always find time for them. I'm passionate about learning and I find teaching to be the best way to learn, so I teach and share everything I learn as much as possible.
DevExperience: So you are now an independent consultant. How is this compared to a full time job? Do you still write code?
Yan Cui: It's been great, as I get to work with many different customers and learnt about different business domains. I have learnt a lot about the different challenges people try to solve, but perhaps more importantly, the constraints they have to work within. Compared to a full time job, being a consultant offers a lot more diversity, and I have more control over how I spend my time. I don't usually write code for my clients as I can deliver much more value to them by offering guidance and direction instead.
DevExperience: What is the greatest part of your job? What is the not so great part of it?
Yan Cui: The best part of being an independent consultant is that it gives me access to a wide range of challenges and help customers tackle them. The not so great part is that I don't get the full satisfaction of solving those challenges.
DevExperience: What is the first language that you started coding it? What is your favourite right now? OOP or functional?
Yan Cui: The first language was Java. My favourite is still F#, functional-first but drops back to OO/imperative where I need to.
DevExperience: Tell us more about the main ideas of your talks at DevExperience! Why should people register and attend the event?
Yan Cui: I'm doing two talks this year. The idea behind the first talk on serverless security is to give you an idea of what's different with security when it comes to serverless - things that are better, worse or about the same as VMs or containers. You should come to this talk to get a high level view of serverless security and what you ought to worry about.
The second talk is to share some lessons I have learnt about running serverless architectures in production - how do you do CI/CD, testing, monitoring, etc. basically all the boring stuff that not enough people are talking about! You should come to this talk to get more than 2 years worth of production experience with serverless in 45 mins.
That is a huge promise, but we know for sure that Yan will keep his promise and he will really deliver all that amount of information that you need to learn on severless! All you have to do is register and get your holy tickets for the conference and for the workshop!