Web developers are a unique breed. The industry in which they work literally changes by the day. The technology they use today can be outdated tomorrow. The pace at which the industry moves can sometimes be frightening. A web developer has to make research and self-training a way of life.
Every day they will be researching on new technologies and better ways of building the products they need to deliver. Everyday new versions of software languages and software components are released.
Developers by definition are creative problem solvers. They need to have the freedom to create without restrictions. Giving them a certain amount of time every month in which they can build whatever they want allows for better creativity. Somewhere between 15% and 20% of their time is a good amount to allocate to this. It should be time in which the management will not have any say in what they do.
Why Is This Necessary?
This allows for creativity and exploration into new and better ways of producing the products for your business. At the end of the day your company will benefit from their innovation, they will have greater satisfaction and you will retain good developers to work for you.
Working with the Latest Technologies
Being a developer means that you are constantly retraining yourself. Part of being able to make an impact on people's lives is to be able to use the latest technologies that allow you to do that. It is critical that a developer keeps up with the latest technologies in order to remain employable and relevant to the industry.
Technologies and software generally have a lifespan of 5 years but that can be more or less depending on your business focus and the complexity of your system. For example, a social-media website would probably have a shorter code lifespan than a corporate financial management system. A social-media website would need to keep up with the latest and greatest where as a financial management system would be more focused on long term stability.
You Get What You Pay For
A good developer can often output better products with better quality in less time. Why? Because in web development there are many ways of solving a problem and the capability of knowing the optimum and best possible way only comes with experience. Many companies have tried to outsource their development to countries where they can have a product developed for less money. The same principle applies though. If you pay less then expect to have more problems.
Quality of the Code
The quality of a program's code is the responsibility of the developer. It is not the responsibility of the project manager, product owner or management. Quality isn't just about whether or not a system has bugs in it. It has a lot more to do with how the code is structured.
Quality of the code depends on the following factors:
How neatly is the code written?
Are there spacing's carriage returns and comments that allow for easy readability and understanding of the code?
What names have been used for different parts of the code?
Names like Button1 and Button2 are useless to someone trying to understand the code.
Has the code been partitioned and broken down into small parts that make it easier to understand and test?
The quality of the system will depend largely on the above factors. If you take pride in what is below the bonnet, not just what is seen, then you will probably be more careful in making sure that the system works the way it is intended to.