Hacker News new | ask | show | jobs
by fiveo 5695 days ago
Agile is such a generalization. There are many practices below Agile such as Scrum, XP, Lean, Kanban, DSDM, FDD, etc.

Agile itself is just a set of principles. The actual implementation still require some processes.

I don't think people should attack Agile as a whole, but they should focus on which practices they chose. For example: Scrum is an agile practice for Project Management. But in order for a shop to use Scrum, they must implement certain practices from XP. XP more of an agile practice for Software Developers.

There are shops which implement only SCRUM but not the XP part. That is to say that they implement the whole Sprint, Retrospectives, Backlog, Stand-up meeting, but they did not refactor bad code, they did not try their best to have an automation in place. At the end of each sprint, they never test the whole app, they only test whatever the sprint accomplished. This is even worse than the previous practice.

I wholeheartedly agree with those who have been burned by management who thinks that SCRUM or XP will make things better in a short time. I hate to say this but it takes a very long time for a company to change their culture and mindset (depending on the size of the company and what the company does: product vs service).

If your company is switching to something new, make sure they know that methodology inside out. Make sure they met the pre-requisite. Make sure they are willing to sacrifice their time and money for a while.

Otherwise, get your resume ready cause the ship will sink faster than before.

On the other hand, some people might not agree with this but when you have one of these processes in place and everything in your engineering department runs well, that doesn't mean life is good. When the company is not doing well, your senior engineers who receive a big-fat check every month might be a good candidate to be let go. The reason is because your intermediate and junior engineers have already known everything inside out (cause one of the practice in Agile is to share knowledge, cross-functional team, or whatever).

Be aware that it could be a double-edged sword.