Awesome Software Engineering Practices

Andrey Kucherenko

Project
Team
Developer

Project

Цели
Задачи
Процессы

Team

Люди

Знания
Время

Developer

Benefits

  • Unit tests coverage

  • Increases assurance of correctness

  • More complete explorations of requirements

  • Improved code

  • Code as documentation

  • Safe refactoring

  • No extra code

How to start with TDD?

 
  • Start new project with TDD

  • Start new tasks with unit tests

  • Start to fix bugs with unit tests

 

How to improve my TDD?

 
  • Coderetreats

  • Coding dojo 

  • Cyber-dojo.org

 

Pair programming

Driver
Navigator

I don't use Pair Programming when:

 
  • Build nonproduction code
  • Work on spikes for future stories
  • Learn new tool or technique
  • Improve existing test coverage or fix code violations
 

Pair Programming Rules

 
  • Ping Pong
  • Silent coding
  • Evil coder
  • Baby steps
  • ...
 

Pair Programming Smells

 
  • Unequal access
  • Domination
  • Unhealthy relationship
  • Every player play his game
  • Endless debate
 

CI/CD

Code Review

Инструменты

grunt-mutation-testing

coverage-blamer

Questions?

deck

By Andrey Kucherenko

deck

  • 1,600