In this article, a first of five, I describe the time I went through as a software developer that made me a success in the IT industry. In the first few years as a developer, I was always working with code that somebody else wrote that I had to manage. Soon I was assigned work that had to be done from scratch. This was my chance to express myself, but alas it took many years before I was finally able to develop software the way I liked best. In the initial years, I had no say in the best practices of software development. It was only after 8 to 10 years working as a developer, that I was being heard. What is most remarkable is that during the early years of working as a developer, I like most software developers never really questioned the practices to an extent that I was driven to change them. It was after the initial 8 years, that a switch flipped inside my head which made me question every process I came across.
The most important thing in software development is the design of the solution. This was one aspect which was missing in all the early years. Sure, I did do design documents and class diagrams, but that is not design. Design is the vision of how the different pieces fit together in the end. It is the high level view of the solution you are trying to implement for the given business problem. This view for some people comes very naturally and these people are visionaries in the right sense. However, for most, it comes with a lot of experience and failed projects. Unless one is burned, one does not learn. I can say now that I am able to design the software in my head now much more clearly that I ever could. And no book or technology has enabled me to think in this certain way, It has just happened and I attribute it to the experience. Any enlightened person who cares to tell me the physiological reasons for this is welcome to comment.
I cannot stress enough on the design aspect of the project. If the design is well thought out and the designer has a vision of the competed project, there is almost a guarantee that the project will come out as a success. However, a lot of people take too much time to reach a stage where they can envision what the end product should be before embarking on the project. My advice to these people is – don’t be afraid of mistakes in the early part of your career. Try and do as much design work before jumping into coding as possible. For the modern technology, the wavemaker low-code development should be made available to the companies. The project will be beneficial for the growth of the websites. The person can comment at the sites for further information.
Learning a skill like coding is not exclusive anymore. With increasing intelligent software development languages and development tools, it is of utmost importance now that people develop their design skills more than the coding skills. Coding will become a commodity very soon as the development tools become easier and easier. Gone are the days when you had to manage doubly linked lists and had to manage memory by moving around pointers. In this day and age, desing and vision are extremely important. Software development is going to become an art form where you will express yourself not by code, but by elegant designs.