4–7 Nov 2019

Building, specifying, and testing APIs with microservices

James Gough (Morgan Stanley), Nick Ebbitt (Morgan Stanley), Matthew Auburn (Morgan Stanley)
9:0012:30 Tuesday, 5 November 2019
Location: Hall A2
Secondary topics:  Best Practice, Case Study, Hands-on
Average rating: **...
(2.50, 2 ratings)

Who is this presentation for?

  • Developers and architects

Level

Beginner

Description

James Gough, Nick Ebbitt, and Matthew Auburn walk you through the creation of a very simple Task List API.

Outline:

  • Create microservices using Spring Boot that exposes an API and prove that’s not the hard part, with options offered for non-Java developers
  • Use Pact or Spring Cloud Contract (you can choose) test and progress the API with new features
  • Discover how to use OpenAPI to specify an API and the balance between developing APIs with specification first or contract driven
  • Use a specification to allow your API to be versioned and use semantic versioning to ensure that components in your architecture remain decoupled and free to move without breaking consumers
  • The final part of the lab leaves you with the reasons for an API Gateway and why they’re architecturally important and introduces the concepts of a service mesh, which you now understand in the context of developing an API program

Materials or downloads needed in advance

  • A laptop with access to GitHub and a very baseline setup (with prerequisites to come)

What you'll learn

  • Understand that building an API is very simple and that testing and ensuring API compatibility is key to loosely coupled services
  • Learn the importance of Open API Specifications and whether they're incidental or crafted
  • Discover how to use semantic versioning to ensure compatibility of services
  • Gain an introduction to gateways and microservices
Photo of James Gough

James Gough

Morgan Stanley

James (Jim) Gough is an executive director and developer at Morgan Stanley, where he’s focused on building customer-facing technology. A Java developer and author, Jim first became interested in Java during his degree program at the University of Warwick; after graduating, he became a member of the London Java Community. Community has remained central to Jim’s contributions, which include working on the design and testing of JSR-310 and serving on the Java Community Process Executive Committee for several years. Jim’s a regular conference speaker and spent four years teaching Java and C++ around the world.

Photo of Nick Ebbitt

Nick Ebbitt

Morgan Stanley

Nick Ebbitt is a software engineer at Morgan Stanley. Software development is Nick’s passion, particularly the processes involved in delivering change. The ability to regularly deliver value in a controlled, automated fashion is central to the way he works. He’s a developer at heart with a strong interest in ops. Quality of software is very important to him, and he looks to use suitable tools and techniques to implement various flavours of tests. Nick believes that testing is a core part of the developers role and should be valued highly. He enjoys the latest technologies and techniques for delivering software.

Photo of Matthew Auburn

Matthew Auburn

Morgan Stanley

Matt Auburn is a passionate software developer at Morgan Stanley, where he works as an API developer. Matt owns the DevOps and Security API components. He’s a Java developer at heart, but he also writes automated tests in Python and has an interest in Go. He enjoys learning new technologies, mentoring, and teaching developers.

Comments on this page are now closed.

Comments

Rohit Joshi | Senior Software Engineer
3/11/2019 14:27 CET

Ideas for building development environment and mock systems for developers. With docker and micro-services it takes a lot of time, resources and context to get system or a part of up and running. It’s even harder with something like access management or RBAC controls, various security compliances and cloud native services. Would like to hear some real world experiences and advices on getting smoother development environment in micro-services world.

Contact us

confreg@oreilly.com

For conference registration information and customer service

partners@oreilly.com

For more information on community discounts and trade opportunities with O’Reilly conferences

Become a sponsor

For information on exhibiting or sponsoring a conference

pr@oreilly.com

For media/analyst press inquires