Slide 1

Slide 1 text

Continuous Delivery to Cloud Foundry Why your Junior Devs will love it!

Slide 2

Slide 2 text

Some Background... ▪ Professional developer since November 2016 ▪ No previous coding experience (past life was in the insurance industry) ▪ Completed an intensive 3 month coding bootcamp ▪ After about 2 weeks of onboarding, moved on a client project and was assigned features to work on

Slide 3

Slide 3 text

Question? How can you take a coding bootcamp grad and get them pushing to master on a client’s app with minimal supervision?

Slide 4

Slide 4 text

Concerns? Senior Dev: Junior Dev: - It takes too long to train new developers to do everything - I don’t know how to do everything… yet - They might break the app - I might break the app

Slide 5

Slide 5 text

Solution Cloud Foundry + Continuous Delivery!

Slide 6

Slide 6 text

Test first mentality

Slide 7

Slide 7 text

Cloud Foundry

Slide 8

Slide 8 text

● Simple to use cli - easy learn Why do we like it?

Slide 9

Slide 9 text

I don’t care how, just run my app $ cf push myapp

Slide 10

Slide 10 text

$ cf scale -i 100 myapp SH!T, it’s a hit - I need more horsepower

Slide 11

Slide 11 text

$ cf create-service... I need a DB and but don’t want to manage it

Slide 12

Slide 12 text

$ cf create-space... I want orgs and spaces so I can safely share a platform

Slide 13

Slide 13 text

Concourse CI Pipeline

Slide 14

Slide 14 text

I want to build Pipelines now! … jobs: - name: job-deploy-myapp plan: - {get: resource-myapp, trigger: true} - put: resource-deploy-myapp params: manifest: myapp/manifest.yml path: myapp

Slide 15

Slide 15 text

Concourse CI Pipeline

Slide 16

Slide 16 text

Continuous Delivery “A software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time.” --Wikipedia

Slide 17

Slide 17 text

Cloud Foundry + Concourse = :)

Slide 18

Slide 18 text

Tests - (no external dependencies)

Slide 19

Slide 19 text

Deploy to Pre-production environment

Slide 20

Slide 20 text

End to end tests

Slide 21

Slide 21 text

Deploy to Production Environment

Slide 22

Slide 22 text

Tests on Production

Slide 23

Slide 23 text

What do your Jr Devs Learn from this?

Slide 24

Slide 24 text

Tests are important

Slide 25

Slide 25 text

Environment matters

Slide 26

Slide 26 text

The value of a short feedback loop

Slide 27

Slide 27 text

Why do we love it? ▪ Quick to get started ▪ Feel productive immediately ▪ Rapid learning due to frequent iteration

Slide 28

Slide 28 text

Thanks