Agile is not only about management!

A long time ago a remember when agile on the early days was something driven by developers - pretty much by XP practitioners. Don`t get me wrong agile is about the customer, and its about making better software and of course mgmt is part of software but agile is not only about mgmt.

I`m really not sure when - maybe after PMI embracing Scrum and Jira rises as the ultimate agile tool(not for me :-) ) But today more and more a see less and less engineers going away from agile.  Maybe because they thing agile is about process, tools(jira) and practices(scrum) and thats a manager thing. To be clear agile is way more than scrum. I`m way more into Lean and Kanban than Scrum but i can`t deny i`m seeing this more and more on the market.

Whats the Side effects of this?

First of all - Software development is not only about code and a good coder is more than just CODE and to start we need start with principles - Make value for the customer. It`s odd but many developers are not familiar with the Agile Manifesto. Developers know what is? Yes for sure, do they know who to use the principles on they daily work? No - Not All - Do they care? No - lots of people dont care.

Part of the problem... 

May too much focus on PROCESS like SCRUM or even JIRA and too little focus on engineering practices like we have in XP: Collective Ownership, TDD, Simplicity, Continuous integration(more and more are replaced by branch's and feature branches) and Design the missing discipline(OO Design, FP Design, etc...).

People dont like to change

Most of time companies want add practices and not remove anything, companies very often dont unlearn process they just add more stuff. There are still tons of companies in Brazil with CMMI process / CMMI thinking - Yes most of they dont have the certifications - some have but the ideias are still around. So is easy to understand why developers would give up in all of this and just focus on the code.

However: Microservices are very hot right now

Surprisingly SOA is consider wrong. Thats non-sense because MSA is SOA. You need SOA principles todo right microservices. Microservices are one evolution of SOA. There are something else, microservices are about ISOLATION and INDEPENDENCE. So a team could be like a startup and should have they own database, they owen service interface they own way to work and tools and frameworks. Doing MSA you can have several benefits but to doing you need maturity and agile can help you alot with that.  Developers need Agile engineers practices most on XP todo proper microservices. How could you do proper microservices without thinking about testing and design? How could you do it property without doing Refactoring and adding value to the customer? So i think you need agile even with you are not a manager.

Cheers,
Diego Pacheco

Popular posts from this blog

Kafka Streams with Java 15

Rust and Java Interoperability

HMAC in Java