Kfir Bloch
Scala From The Trenches
Head of Backend Engineering @ Wix
@kfirondev
Introduction to TDD and clean code
Kfir Bloch
Your pic here
• Head of backend engineering @ Wix
• 17 years experience as hands-on developer
• Joined Wix 5 years ago
linkedin/in/blochkfir github.com/kfiron@kfirondevkfirb@wix.com
Definitions
01
@kfirondev
The essence of TDD
@kfirondev
Great software is something to marvel at: powerful,
elegant, functional, a pleasure to work with as both a
developer and as a user. Great software isn’t written by
machines. It is written by professionals with an
unshakable commitment to craftsmanship
TDD & Clean code “Buzzwords”
Unit Test
Fakes
Collaborators
Stubs Matchers
Integration
Tests
Refactoring
Mocks
Contract
tests
www.maplecityrubber.com@kfirondev
Use Case
02
Quiz
Prize server Database
Get - prize
Get - prize
OK
OK
Get - prize
Get - prize
Already played
Already played
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Already p.
Already p.
Already p.
Already p.
Already p.
Already p.
Already p.
Already p.
Already p.
Already p.
Database
Quiz
Prize server Database
Get - prize
Get - prize
OK
OK
Get - prize
Already played
Get - prize
Get - prize
Get - prize
Get - prize
Get - prize
Already p.
Already p.
Already p.
Already p.
Already p.
Fail fast pattern
T
H
R
O
T
T
L
E
R
Rolling window key (IP)
Throttler
Live Coding
03
Q&A
linkedin/in/blochkfir github.com/kfiron@kfirondevkfirb@wix.com
Kfir Bloch
Thank You
Wix Engineering Blog
http://engineering.wix.com/
We are hiring
http://jobs.wix.com
Kfir Bloch @kfirondev
email
jobs@wix.com

Scala from the Trenches

  • 1.
    Kfir Bloch Scala FromThe Trenches Head of Backend Engineering @ Wix @kfirondev Introduction to TDD and clean code
  • 2.
    Kfir Bloch Your pichere • Head of backend engineering @ Wix • 17 years experience as hands-on developer • Joined Wix 5 years ago linkedin/in/blochkfir github.com/kfiron@kfirondevkfirb@wix.com
  • 3.
  • 4.
  • 5.
    @kfirondev Great software issomething to marvel at: powerful, elegant, functional, a pleasure to work with as both a developer and as a user. Great software isn’t written by machines. It is written by professionals with an unshakable commitment to craftsmanship
  • 6.
    TDD & Cleancode “Buzzwords” Unit Test Fakes Collaborators Stubs Matchers Integration Tests Refactoring Mocks Contract tests www.maplecityrubber.com@kfirondev
  • 7.
  • 8.
    Quiz Prize server Database Get- prize Get - prize OK OK Get - prize Get - prize Already played Already played Get - prize Get - prize Get - prize Get - prize Get - prize Get - prize Get - prize Get - prize Get - prize Get - prize Already p. Already p. Already p. Already p. Already p. Already p. Already p. Already p. Already p. Already p. Database
  • 9.
    Quiz Prize server Database Get- prize Get - prize OK OK Get - prize Already played Get - prize Get - prize Get - prize Get - prize Get - prize Already p. Already p. Already p. Already p. Already p. Fail fast pattern T H R O T T L E R Rolling window key (IP) Throttler
  • 10.
  • 11.
  • 12.
    Thank You Wix EngineeringBlog http://engineering.wix.com/ We are hiring http://jobs.wix.com Kfir Bloch @kfirondev email jobs@wix.com

Editor's Notes

  • #4 The first case is desgradation of service
  • #7 Microservices has many aspects, I am not going to speak about them. It is not part of my talk, but I will be around and would to disucus any of this items, or you can tweet me
  • #8 The first case is desgradation of service
  • #11 The first case is desgradation of service