Oh I loathe this term – the Software Factory – where visions of a funnel that take in software requirements into a building where idle developers sit by twiddling their thumbs waiting for their next task to be assigned to them so that they work to deliver a piece of software.
Factory not moving fast enough? Add more developers, the more we add, the faster it should go.
Except Software Delivery is not a factory and developers are so much more than cogs in the wheels.
My favourite part about developing software is the creativity that comes with hearing a new problem and trying to devise a way to solve it. What worked last time? What is broke this time? What must I do differently in my approach? What new libraries exist that could help me out now and in the future?
And let’s not forget the ground that we work on, it is constantly shifting and changing – frameworks, platforms, constructs – all of it. Constantly improving and developing and an increasingly rapid rate that makes it so hard to keep up despite the number of video training sites available to you. The opportunities for creativity and ingenuity that abound are simply incredible – if I were to compare it to being a doctor, it’d be akin to the patient’s body changing daily.
The creativity to solve these problems will not be defined within a factory, but by the creativity of the people dealing with these uncertainties while continually delivering amazing pieces of wonder.