Presentation: Patterns & Practices for Cloud-Based Microservices

Location:

Duration

Duration: 
4:10pm - 5:00pm

Day of week:

Level:

Persona:

Key Takeaways

  • Hear insights developing Microservices from Jet engineers.
  • Learn patterns have have helped Jet be more successful.
  • See how microservices are being developed and deployed on the .NET stack

Abstract

Jet.com is an e-commerce startup competing with Amazon. We're heavy users of F#, and have based our architecture around Azure-based event-driven functional microservices. Over the last several months, we've schooled ourselves on what works and what doesn't for F# and microservices. This session will walk you through the lessons we have learned on our way to developing our platform.

Interview

Question: 
What’s the motivation for your talk?
Answer: 
The main motivation for my presentation is to show Jet’s architecture. We are doing a lot of cool things in the microservices space, and because it’s F# and Azure and not a lot of folks are doing that. I'll be talking through some of the lessons that we have learned along the way.
Question: 
What does a microservice look like for Jet on the .NET stack? What is the technology that is used in IAS obviously, and F#?
Answer: 
The definition of microservice, to us, is a service that follows the single responsibility principle, so it doesn’t have to be a service that you can code in a day or it’s not 100 lines. It can be relatively larger, as long as it’s single-responsibility. Regarding technology, it's mostly concentrated on Azure and F#, but we also have Kafka, Jenkins, Puppet, Storm, R, Node, and Go. That is a language we added recently, but it is sort of all over the place.
Question: 
What are your key takeaways for this talk? What is something that you are giving a developer to go home and try?
Answer: 
The main takeaway is for anyone that has already started down a path of microservices, to look at our suggestions, and learn from our mistakes. The most important takeaway is, if you already have microservices, consider going home and fix or change what you do into something better. If you don’t have any micro services, if you have never done this, maybe try it out -- but there is so much. For the folks who aren’t there yet, it's encouraging you to be more aware of what you are getting into, should you consider microservices.
Question: 
Can you give me an example of some of the patterns you plan to discuss?
Answer: 
I have several, very specific, recommendations. One of them is don’t abstract if you want one service to write to Zero MQ and to SQL Server and to Event Store, and all of these different places. Instead, make three or eight separate services, however many you need, to write to each of these different things. Do not try to do this all on one big service. You'll see that some of these feel obvious, but they were the sort of terrible ideas that really hit us on the head. No one should ever do this.
Question: 
What do you feel is the most disruptive tech in IT right now?
Answer: 
Microservices running Kafka using Event Store and F#.

Speaker: Rachel Reese

Senior Software Engineer @Jet

Rachel Reese is a long-time software engineer and math geek who can often be found talking to random strangers about the joys of functional programming and F#. She currently helps run the Nashville F# User group, @NashFSharp, and previously ran the Burlington, VT functional programming user group, @VTFun. She's also an ASPInsider, an F# MVP, a community enthusiast, one of the founding @lambdaladies, and a Rachii.

Find Rachel Reese at

Tracks

Monday, 13 June

Tuesday, 14 June

Wednesday, 15 June