Slide 1

Slide 1 text

www.twitter.com/JorgeCastilloPr www.github.com/JorgeCastilloPrz jorge.castillo.prz@gmail.com The Developer Journey Jorge Castillo Pablo Guardiola www.twitter.com/guardiola31337 www.github.com/Guardiola31337 guardiola31337@gmail.com

Slide 2

Slide 2 text

1 Before the Code

Slide 3

Slide 3 text

Meetings

Slide 4

Slide 4 text

Efficiency ● Prepare the meeting ● Action points ● Number of people involved

Slide 5

Slide 5 text

Product definition

Slide 6

Slide 6 text

Feedback ● MVP & Iterations ● Product transparency

Slide 7

Slide 7 text

“ Work with a user to think like a user

Slide 8

Slide 8 text

PM education ● Estimations will be required ● User Story definition

Slide 9

Slide 9 text

Estimation ● Avoid hot estimations ● It’s your responsibility to work on them ● Estimations are not deadlines

Slide 10

Slide 10 text

Define contracts ● Discuss with involved people ● Coordination importance

Slide 11

Slide 11 text

2 During the Code

Slide 12

Slide 12 text

Professionalism

Slide 13

Slide 13 text

Accountability

Slide 14

Slide 14 text

Communication ● Efficient on dailies ● Centralize and persist information ● Be polite

Slide 15

Slide 15 text

Code

Slide 16

Slide 16 text

Don’t fear change ● Boy scouting ● Proactiveness

Slide 17

Slide 17 text

Balance ● Perfect software doesn’t exist ● Working software is not enough

Slide 18

Slide 18 text

Ownership ● Learn to criticize and to be criticized ● Collective mindset

Slide 19

Slide 19 text

Tooling ● Master (IDE, Shell, shortcuts…) ● Create (libraries, scripts…) ● Automatize

Slide 20

Slide 20 text

Testing

Slide 21

Slide 21 text

● Be clever ● Design testable code ● Test state instead of behavior

Slide 22

Slide 22 text

Feel safe ● Find bugs once ● Test harness for refactoring ● Immediate feedback

Slide 23

Slide 23 text

CI

Slide 24

Slide 24 text

“ Test your software or your users will

Slide 25

Slide 25 text

3 After the Code

Slide 26

Slide 26 text

● Invest in your knowledge ● Who owns your career? ● Choose who you want to work with

Slide 27

Slide 27 text

Conclusions

Slide 28

Slide 28 text

● Honesty ● Be humble ● Professionalism ● Empathy ● Collective ownership ● Don’t stop learning ● Be an example ● ...

Slide 29

Slide 29 text

Bibliography ● Pragmatic programer ● The Software Craftsmanship ● Clean code ● Working Effectively with Unit Tests ● Refactoring: Improving the design of existing code ● Debugging Teams ● Presentation template by SlidesCarnival

Slide 30

Slide 30 text

Thanks! Any questions?