Banking on Go - GoSF meetup Sep 2017

67f4a8f2a209a38d7242829947b26ba3?s=47 mattheath
September 20, 2017

Banking on Go - GoSF meetup Sep 2017

Presented at GoSF meetup, September 2017

"Matt Heath will walk through how Monzo, a new UK based bank, have developed their Go-based banking platform along with some of the challenges they have faced while growing both their team and infrastructure."

67f4a8f2a209a38d7242829947b26ba3?s=128

mattheath

September 20, 2017
Tweet

Transcript

  1. Banking on Go Matt Heath, Monzo

  2. Hi, I’m Matt @mattheath

  3. None
  4. None
  5. None
  6. None
  7. None
  8. None
  9. None
  10. None
  11. None
  12. None
  13. monoliths traditional dev

  14. Microservices

  15. Microservices

  16. None
  17. None
  18. monzo/typhon

  19. type Service func(req Request) Response

  20. router.GET("/", handler.List) router.POST("/", handler.Register) router.DELETE("/:id", handler.Deregister)

  21. None
  22. None
  23. None
  24. None
  25. None
  26. Service Service

  27. Service Service Service Service

  28. + = ❤

  29. Service Service Service Service

  30. Service Service Service Service linkerd

  31. Service Service Service Service linkerd

  32. Service Service Service Service linkerd

  33. None
  34. Service Service Service Service linkerd service
 discovery

  35. 0 40 80 160 120 Feb 2015 200 Number of

    services 240 280 320 Sep 2017
  36. API card-api card-processing cards transactions ledger transaction-enrichment merchant feed-generator feed

    apns API card-api card-processing cards transactions ledger transaction-enrichment merchant feed-generator feed apns
  37. None
  38. Attack of the mainframes

  39. monoliths traditional dev

  40. None
  41. None
  42. go generate payment_messages

  43. Kubernetes Service Third
 Parties ???

  44. Kubernetes Service service pod Go based
 UDP 
 encapsulator routing

    table
 routes IP range to local udp
 encapsulation
 interface “connectivity” pods VPN
 network
 interface Go based
 UDP 
 listener routing table
 routes packets
 to local vpn
 interface colocation VPN
 Appliance Third
 Parties
  45. None
  46. GC Pauses

  47. None
  48. None
  49. None
  50. None
  51. None
  52. None
  53. Decimals

  54. None
  55. None
  56. None
  57. None
  58. Testing

  59. API card-api card-processing cards transactions ledger transaction-enrichment merchant feed-generator feed

    apns API card-api card-processing cards transactions ledger transaction-enrichment merchant feed-generator feed apns
  60. None
  61. Future?

  62. None
  63. Thanks! @mattheath @monzo