Chris and Drew share their combined knowledge around developer experience, why (micro) feedback loops matter a whole lot, and present a live demo of a Cloud Native application working locally - complete with unit tests, end-to-end tests and smoke tests.
- Originally presented by Chris and Drew Optimizing for Developer Experience in a Cloud Native World - AWS Meetup Group
- Concepts based on the work from Tim Cochran via Martin Fowler Maximizing Developer Effectiveness
- Cloud Native DX miro board for presentation content
- Following the 3 Musketeers pattern
This talk is packed with real patterns used by Chris and Drew working with teams to help them increase their effectiveness. The demo was designed so you can follow along on your own workstation - and be up and running within minutes without the need to install and configure the underlying tech (Node, AWS SAM, Python, Playwright, etc).
Meetup Video: https://www.youtube.com/watch?v=6MP1u7O_3bY
"From what I have observed, you have to nail the basics, the things that developers do 10, 100 or 200 times a day. I call them micro-feedback loops. This could be running a unit test while fixing a bug. It could be seeing a code change reflected in your local environment or development environments." - Tim Cochran
Demo Repo: GSD-AWS-CDK-Serverless-Example
If you have
docker installed you should be able to have a local env running in a few minutes.
git clone firstname.lastname@example.org:chrishart0/gsd-aws-cdk-serverless-example.git && cd gsd-aws-cdk-serverless-example make install && make run
Hint: If you run
make after cloning the repo, it will show you the help menu and let you know what commands to run to build, test and deploy the application.
Micro feedback loops demonstrated in this repo:
- Unit tests (front-end, back-end, infra)
- Local environment - available in the browser
- End-to-end tests
- Direct deployment to AWS from your workstation
- CI/CD runs the same as local, with additional security checks
We'd love to hear what you think about these patterns, and get some feedback on your own developer experience using the demo repo.