There are great Software engineers. The ones who can knock everything that you give them out of the park. Any great challenging work will be a piece of cake for them. But then there are those other engineers, who innovate ways to make their lives easier. These people disrupt the way the job is done. Even when you give them the most mundane job, they know how to make it the most interesting thing that they have worked on. In this post , im trying to cite some instances of how some engineers that i have worked with changed the game. Even I had attempted some small stuffs in my experience, im not citing any of them here. I will attribute credits to the people involved in each of these instances based on their consent.
Another instance the same developer has to implement a functionality, where there are 1000s of Input controls that needs to be added. These are grouped in to User controls. Normally anyones reaction at this would be that ‘uff such a boring task’. This guy did not start implementing the user controls. He went ahead and wrote a desktop tool that will churn out user controls based on the inputs that he gives. A program manager could go and churn out the user controls based on his requirement and it getts integrated . User controls were not vanilla UI. it had validations, integration with the C# objects and stuff. and all of it done.
There was a mundane task of creating SQL scripts from a big excel sheet. It cannot be done easily just with the Excel scripting, because its a combination of multiple excel sheets and requires a lot of validation. One developer goes and figures out that it needs to be automated and gives the idea to the management. What used to be a 4 person month effort suddenly reduced to 4 person days effort.
One of my colleagues had to implement a graph of relationships behind the sharepoint. and the SQL server way of doing things proved to be really slow. This guy gets to hear about Neo4J, goes ahead works over a weekend and monday comes up with a fork of neo4J that is highly optimized for the current environment. He is the best Neo4J developer that i have known. What could have ended up as a boring Sharepoint work, turned out to be the most exciting journey.
There is no point spending all hours writing code that will eventually get thrown away after few years. Great engineers can finish the work in 1/4 of the time a good engineer would do. But these Disruptive engineers are those ones who can do it in 1/8th of that time, and make it more ubiquitous and completely out of the box.
If you find yourself doing that regular architecture stuff or coding for the whole day, trust me you are in the wrong path.if you work on your 8 hour planned task for the whole of 8 hours , then there is something seriously wrong. try to figure out a way to complete that 8 hour task in 2 hours everyday and spend the rest of your time in the ways that finds you happiness. Might be coffee with 10 different people (This is such a good thing. A great learning experience) or work on something really big. Try out a completely different technology. Thought leadership is what is important. We need great Thought leaders along with some great executioners. Tomorrow when you walk into your work, try not to work on that mundane task for 8 hours. Change the way it is done.