Armagan Amcalar
unu GmbH
September 25th, 2018
Armagan Amcalar
Head of Software Engineering @ unu GmbH
Founder @ Lonca Works
dashersw dashersw
dashersw
organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations.
— Melvin Conway, 1968
dashersw
Why do we need code?
Why do we need high level languages?
Why do we need software architecture?
And modular systems
This is actually how systems are built for ages
Microservices enforce decoupling
Individual development
Individual technology choices
Individual builds
Individual deployments
Individual scaling
... see a pattern?
dashersw
dashersw
dashersw
If Millennials are not a part of the process of input and forward thinking, they are most likely to disengage from the workplace and find meaning elsewhere.
Millennials seek work that is meaningful. They are not fearful of changing jobs and don't build safety nets.
dashersw
They can't be bound by the earlier decisions of others
Require extreme autonomy
Independence, freedom, ownership
"My success doesn't depend on your success"
"I want to grow. I can't wait for you."
Fear of missing out
Observe your team's psychology and build for that
Create space and infrastructure for autonomy
Double down on communication
dashersw
It's a collaboration solution that improves efficiency by decoupling communication from implementation
dashersw
You don't need scrum masters or project managers to facilitate communication
Get the right team setup, give the right ownership
Define and document areas of responsibility
Document public interfaces and functionality
Leave no room for interpretation and frustration
dashersw
Abolish responsibilities based on layers of a system:
the UI, the business logic, the database, the infrastructure
Distribute product / feature responsibilities
A team / developer is responsible for a thin slice through all layers
Immense chance for full-stack developers
This is why JavaScript is so popular with Gen Y
dashersw
Communication is a direct bi product of human nature.
Your organization, your company, your team, and the code you write, will evolve with your way of communication.
If you look at microservices as only a technological choice, you will fail. It's a cultural, and a communicational shift.
And in order to succeed, you have to consider the human side of microservices.
dashersw
Armagan Amcalar