[...] when a company employs someone, the company is responsible for training the person to become the employee they want! Intrinsic Motivation and Technical Excellence
Whereas Uncle Bob wrote in The Clean Coder:
Your career is your responsibility. It is not your employer’s responsibility to make sure you are marketable. It is not your employer’s responsibility to train you, or to send you to conferences, or to buy you books. These things are your responsibility. Woe to the software developer who entrusts his career to his employer. Robert C. Martin, The Clean Coder
Are we disagreeing here? I don’t think so. And if we are, then only slightly.
Your Career is Your Responsibility
Period. You cannot expect your employer to do anything only you will profit from, just because “it is the right thing”. So, if you want to learn technology X because it will look good on your resumee, don’t expect your employer to give you the time to do so. Your employment is basically an exchange: Money for work done. Anything more (from both sides) is icing on the cake.
Your career is your responsibility. If your employer does not give you the time and resources to learn and become better, you should be prepared to work on them on your own.
And you should think hard about whether this is really the right employer for you. As an employee, your employer is probably your single source of money. So it’s also your single source of failure for your career. When they stop giving your money for whatever reason, you need to be prepared to find someone else who gives you money. So if you get the feeling that your employer is steering you towards an uncertain future, think about your options early. Don’t wait until it is too late.
You cannot expect your employer to do anything only you will profit from. But your employer should do things they will profit from:
Motivated People are Your Employer's Responsibility
Employment is basically an exchange: Money for work done. Actually most employment contracts are even: Money for time at the desk (but if the employee does not do any work, they will not stay with the company for very long). It is not your employee’s responsibility to love their job. Companies cannot just complain that their employees are not intrinsically motivated and do nothing else - They have to create an environment where intrinsic motivation can grow.
You, as a company, are not responsible for making your employees more marketable. But, on the other hand, your employees are not responsible for becoming exactly the employees you need. They are not obliged to learn the skills you need in their spare time. When you hired them, this became your responsiblity.
If you, as a company, do not allow your people to refactor, if you do not allow them to learn or go to conferences, if you do not allow them to grow professionally, some of them will start thinking about whether you are really the right employer for them. This is absolutely reasonable because you are their career’s single point of failure.
If you want to compete in this global market, if you want to stay relevant in the future, you need innovative, creative, motivated employees. You need people who love their job. This means that you have to give them jobs they can love. You need to give them freedom and time to grow professionally. Not because it’s the right thing to do, but because your profit depends on it.
It is not the employer’s responsiblity to take care of your career. It is not the employee’s responsibility to become exactly the person the employer needs. But when the employee does not show any interest, they risk being fired. And when the employer does not allow their employees to grow professionall, people will start thinking about leaving.
When people start to think about leaving because they see the company as an impediment to their career, the best will leave first. Some years ago a friend of mine was leaving his company. He told me “This is a company where only people with mortgages stay. Everyone else leaves after a year”. Believe me, you don’t want to be a company like that.
When employment is only an exchange of money for work, both sides suffer. When you allow people to do good work - and to learn to do good work - they will be more motivated. And because they are more motivated, you, as a company, will profit.