{

Engineering Demystified

Unveiling Software Development and Collaboration

The fascinating world of software

I want to talk to computers

1. Crack the egg

2. Add the egg to the pan

3. Cover when the edges turn white

4. Serve

Algorithm

Developing alone

Getting things DONE

Programming is cool

Many users

Something broke

Angry users

No Gandalf Principle

Looks simple

Corner case: cooking without gravity

Code that tests code

Prevent impact to users

Corner cases

Regressions

Avoid breaking what already works

Increased development speed

 

# TESTING

What about Data?

Best practices

Diving depressurization

Decompression sickness

Engineering Craft

  • Software patterns
  • Experience tell us how to apply them
  • Essentials do not change

After holidays, we forgot how our code worked

All hope is lost

Testing is a craft that can be mastered

Documenting the code helps you to remember what you did

Others have solved similar problems before

The community is always with you 💍

You do not need to know everything

Dunning-Kruger effect

We have now a successful application and are technically competent. What should we do next?

A Keep it like that

B Build a team to develop more and faster

Why a team?

  • Users want more - features
  • Investors want more - growth
  • We want more - holidays

We need more people!

Programming with others 🌝

Initial contributor

New contributors

What do you prefer?

Code style

Peopleware

The social aspect

  • Computers are easy
  • Humans are complex
    • Emotions play a key role
    • Making others technically proficient is difficult

If we have a team of 4 members, what will be our development throughput?

A Slower than with 1 dev

B 4x faster

C 2x or 3x times faster

D More than 4x faster

Over-engineering

The friction

We have now a performant software development team. What do we do now? 

A Keep it like that

B Create more teams to develop more and faster

C Make our team bigger

D Go back to 1 dev

One team is not enough!

Two Pizza Team

6 members = 15 links

12 members = 66 links

50 members = 1225 links!!!!

 

The Architect Elevator

@Gregor Hohpe

}

Made with Slides.com