Are you in the project which needs ten thousand auto-scaled docker containers on Kubernetes in a multi-regional AWS deployment?
Right.. we also have never done that. Nevertheless, you still might need DevOps 'magic' to deliver those boring everyday IT projects on time and budget.
I will tell our journey with DevOps at a small IT shop and share tools & practices we have tried and which of them were useful and which were total overkill.
Ilgvars is founder & developer at FinoTech. He's been working in IT field for more than 15 years and still kind of enjoys it. Things he likes even more: cooking & eating, few sports activities and finally beer.
Report
Share
Report
Share
1 of 41
Download to read offline
More Related Content
“Practical DevOps by a small team of devs” by Ilgvars Jēcis from FinoTech at DevOps focused 58th DevClub.lv
22. 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
24. 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
26. 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
29. 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
35. 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
37. Support - hard things
● Writing documentation
● Patience. Explain customer why things work as they do
● 3rd party integrations
● To avoid ‘temporary’ solutions
● Remove unused features