This document provides an overview and agenda for a presentation on designing reliable software. The presenter graduated from Bilkent University in 2011 and has worked at several companies, currently at Arçelik on IoT infrastructure. The presentation covers topics like software factory, DevOps, serverless computing, development pipelines, and DevOps concepts before and after failures. It also discusses microservice architecture, advantages and challenges, distributed systems, and Conway's Law relating system design to organizational structure.
2. WHO AM I?
▸Graduated From Bilkent University in 2011
▸Vakıfbank, Gate Elektronik, T2 Yazılım, OpsGenie,
Hazelcast, Arçelik.
▸Currently working on IoT infrastructure @Arçelik
8. DEVELOPMENT
BEFORE DEVOPS
▸ DevOps is a new term that primarily focuses
on improved collaboration, communication,
and integration between software developers
and IT operations. It’s an umbrella term that
some describe as a philosophy, cultural
change, and paradigm shift. Figure shows
developer throwing code "over the wall"
Historically many organisations have been
vertically structured with poor integration
among development, infrastructure, security
and support teams. Frequently the groups
report into different organisational structures
with different corporate goals and
philosophies.
13. KAIZEN’S GUIDES
▸Good processes bring good results
▸Go see for yourself (gemba)
▸Speak with data, manage by facts
▸Take action to contain and correct root causes
▸Work as a team
▸Kaizen is everybody’s business
23. MICROSERVICE
▸Is there a formal definition for microservice architecture ?
▸No
▸What is the Difference between monolithic and micro service
styles?
▸Easy to maintain
▸Deployment
▸Scaling
28. ADVANTAGES
▸Can use right tool for the job
▸Can replace entire components easier
▸Can scale specific components
▸Super cloud friendly
▸Will push you DevOps
29. CHALLENGES
▸Distributed/versioned configuration
▸Auto configurations and refresh on runtime
▸New services can auto register at startup
▸Service registration and discovery
▸Centralised log management
▸Collects and visualise log events from distributed processes
▸Circuit Breaker (Bulk Heading)
▸Prevent problems with chain of failures
▸Security
31. SUN’S FALLACIES OF DISTRIBUTED
COMPUTING
▸The network is reliable.
▸Latency is zero.
▸Bandwidth is infinite.
▸The network is secure.
▸Topology doesn't change.
▸There is one administrator.
▸Transport cost is zero.
▸The network is homogeneous.
32. ANY ORGANIZATION THAT
DESIGNS A SYSTEM WILL
PRODUCE A DESIGN
WHOSE STRUCTURE IS A
COPY OF THE
ORGANIZATION’S
COMMUNICATION
STRUCTURE. Melvin Conway
CONWAY’S LAW