Profesia

Development 101

Ako sa vyvíja v Profesii

Milan Herda / február 2018

Čo vyvíjame v Profesii?

Používané technológie

  • Linux
  • Apache
  • PHP (5.6 - 7.0)
  • MySQL
  • ElasticSearch
  • MongoDB
  • Redis

PHP frameworky

PHP frameworky

JS frameworky a knižnice

Život programátora v Profesii

  • pridelený tútor
  • kolečká
  • vagrant
  • adaptačný proces (pohovory po 1., 2., 3. mesiaci)
  • "koncoročné" pohovory

Interné dev semináre a workshopy

Život programátora v Profesii

Dev míting

+

Život programátora v Profesii

Týždeň bláznivých nápadov

Zaradenie do produktového tímu

Život programátora v Profesii

  • každý produkt je ako samostatná firma
  • určitá samostatnosť ohľadom výberu technológií
  • môžu mať rozdielny workflow

Kanban

Git - Feature Branch

  • master - aktuálny stav na produkcii
  • develop - branch pre testovanie testermi

Task = nový branch

Odvodzuje sa z master vetvy

Po dokončení vývoja sa merguje do develop

Pri release sa merguje task do master vetvy

  • GitLab na vlastnom serveri
  • GitLab CI zatiaľ so 4 runnermi
  • runner spúšťa docker kontajnery s projektom

Git - GitLab

Code review

  • Zvyšuje kvalitu kódu
  • Odhaľuje chyby
  • Ľudia sa učia jeden od druhého
  • Zvyšuje sa bus factor

Code review: Pravidlá

  • všetok kód musí prejsť cez code review

  • reviewer je zodpovedný za merge

  • review môže robiť ktokoľvek

Code review: Problémy

  • znášanie kritiky

  • monopol na code review

  • "dvojičky"

Testovanie

Nenapísal si testy? A kde máš dôkaz, že si si to otestoval a že to funguje?

  • Ako robiť testy?
  • Nebude to dlho trvať?
  • Čo testovať?
  • Kedy spúšťať testy?

Refaktoring

Refaktoring

Dva dni do mesiaca sú venované len refaktoringu.*

Boy Scout Rule: Keď siahnem do nejakého kódu, snažím sa ho zanechať v lepšom stave, ako bol predtým.

BTW:

Hľadáme programátorov pre RecruitRank a Profesiu

Ďakujem za pozornosť

Otázky?

Do Bratislavy, Topoľčian alebo Nitry

Bonus

Servery

  • Google Cloud
  • Amazon
  • ešte stále aj vlastné železo

Migrujeme na cloud a do kontajnerov

Celkovo 60 - 70

Deployment

  • nemáme CD

  • máme vlastný nástroj (aka Releaser)

  • v blízkej dobe budeme nahradzovať

Profesia Development 101

By Milan Herda

Profesia Development 101

Ako sa vyvíja v Profesii

  • 537