We're considering teaching some employees who have either zero or general hobbyist level programming experience to take workload off me.
We use Python/Django which has some of the friendliest documentation around and a breeze to learn.
I'm currently a one man IT department for my company and I don't have enough hours to develop everything the company needs. We are not a software company, but it helps to have in house IT to automate tasks, develop customer service features, analyze data, etc.
How do you slowly integrate rookies working on your codebase? Say you have an intern - what do they do? I'm completely reluctant to let them design or develop core code as we'll be dealing with their mistakes / strange design patterns for years. As the primary developer, I'll be the one who has to work around their code.
My thought was to have rookies only modify existing code, never building core features. I can offload work to them with simple tasks after I build the feature itself.
We'd like our employees to learn / find value in the company, and we generally have people 'move up the ranks'.
Is it standard practice to teach people with general/hobbyist level programming? How does the "moving up the ranks" in a software company work for junior level programmers? When do they start working on core code?
I'm trying to decide if it's going to cause more damage than help, and or if there's a way we can use their help without potentially risking core site code (isolated environments?).