Bottom-Up Innovation

I genuinely believe every human being has creative and innovative potential. It’s part of human code and we experience it in every day life, no matter if it is cooking, art, or engineering.

Software engineering to me is a discipline on the triangle of engineering, creativity, and craftsmanship.

Engineering is the most obvious as code and services we produce must be fast, efficient, use discovered patterns, and be scalable.

Creativity is needed to create the service in a way that fulfils customer needs. We usually experience constraints during development of a service and creativity is needed in order to find smart solutions for the problem.

Craftsmanship is maybe less expected point, but I believe one of the most important. We should always aim for perfect, usable, and cleanly organised services. It’s expected a plumber will use straight and aligned pipes, and the result will not look like spaghetti. The same should apply to software.

Bottom-Up Innovation

Given my view of a software engineer, I believe all of the software engineering teams are capable of innovation of products they develop. Innovation that starts with deep knowledge of architecture, services, and data that flow in them.

It also creates a better team spirit, because every member has their voice and use their talent. They will be also responsible for implementing it. That’s easier as everyone in the team believes the idea.

From my experience this is extremely rare approach to innovation companies are doing. The innovation (sometimes sadly “innovation”) is pushed from the top to the team with pretty much approach to just implement the idea. That creates a disconnection between the idea and the implementation. I also believe it’s hugely unfair to software engineers as they are very smart people and deserve more creative space.

Conclusion

My proposal would be to focus on mentoring and developing ideas closely with the software engineering team. It might look like a slower process, but I think it is faster in the end and it delivers much better atmosphere in the team and the company.

There should be also change in a way how leadership communicates ideas to the team. They should stick to high-level business objectives and avoid pushing solution ideas. That does not mean they should not have any ideas at all! It’s just better to keep them for a while, so the team is not influenced.

As a final word I would say you should believe in people, no matter what’s their job title. Everyone has innovative potential and it should be used in order to make employees engaged and happy.