SlideShare a Scribd company logo
Practical DevOps
About us
FinoTech
No IT hipsters
allowed
Usual project
Web app
Backoffice
app
Backend
3rd party
integrations
Database
Backend
What is
DevOps?
By Wikipedia
What is
DevOps?
By Janis Orlovs
What our
customers say?
WTF IS THAT?
What our
customers care
about?
QUICK
CHEAP
AND IT WORKS
It’s all about productivity!
How we do it
ARCHITECTURE
TECH STACK
CODING
QA
DEPLOYMENT
SUPPORT
Architecture MODULAR
MONOLITH
End product
Module A Module B Module C Module D
Single app
What about
microservices?
SERIOUSLY?
microservices = macro headaches
Tech. stack BORING!
No IT hipster’s
opinion allowed
Tech. stack - database
Can PostgreSQL do it?
YES
Pick PostgreSQL
Read PostgreSQL docs
NO
Tech. stack - messaging queue
Can PostgreSQL do it?
YES
Pick PostgreSQL
Read PostgreSQL docs
NO
Tech. stack - backend development
Do I know Java?
YES
Use Java
Learn Java
NO
Tech. stack - web development
It’s a mess
Coding GET THE SHIT DONE!
Coding
● Small independent modules
● Clear interfaces
● Minimize inter-dependencies
● Don’t abstract too much
● It’s ok to copy-paste (sometimes)
● Try to avoid data updates and deletes
● Avoid caching
● Resilience
QA
QA
● Unit tests are mostly useless
● Integration / functional tests rule!
● Support test parallelization
● Test on production-like data
● Manual testing is a must
● Works on my machine --> works on production
Deployment STRAIGHTFORWARD
Build
● My machine can be a build “server” as well
● Setup CI just before project goes live
● Gradle 4.x is awesome
● Jenkins is ok (with Jenkinsfile)
● Docker sucks
“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech  at DevOps focused 58th DevClub.lv
“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech  at DevOps focused 58th DevClub.lv
Deployment
● It’s ok to deploy from local machine (sometimes)
● Deploy from CI when project is in production
● Use PostgreSQL as-a-service if possible
● Automate DB migration
● Deploy daily
ansible-playbook -i my-product deploy.yml
“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech  at DevOps focused 58th DevClub.lv
Tools we like
● Ansible
● Google Cloud
● Cloudflare
Tools we didn’t like or need
● Docker
● Kubernetes
● Terraform
● AWS
Support FUN PART
Support
● We rarely have tech. related issues
● Easier with simple tech. stack
● Be able to to fix issue & deploy in less than an hour
● Having a team of only full-stack dev(ops) helps a lot
● Extensive logging, data audit logs
● Read logs files during morning coffee
“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech  at DevOps focused 58th DevClub.lv
Support - hard things
● Writing documentation
● Patience. Explain customer why things work as they do
● 3rd party integrations
● To avoid ‘temporary’ solutions
● Remove unused features
Tools we like
● Slack
● UptimeRobot
● Logentries
“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech  at DevOps focused 58th DevClub.lv
Final words vs
Thank you! ilgvars.jecis@fino.tech
(we are not hiring)

More Related Content

“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech  at DevOps focused 58th DevClub.lv