Twice in my career I moved from management to more technical roles. Both were somewhat forced by corporate reorgs and I found both quite difficult. Tech is some sort of meritocratic place and if you want to have an impact you need to contribute on an appropriate level. One of the hardest things in these transitions is to be patient enough with myself and not judging myself too hard for not meeting my expectations.
It took me 2-4 years to get on a level I was ok again with what I contribute in my role (lead architect). In these transitions I had the benefit of solid coding skills from way back plus having worked at a tier-1 corporate lab for a few years. I had the benefit that the company supported me but that came also with constraints on freedom and focus in recovering the skills.
Coding school may give you basic coding skills. The deep knowledge you would need to be a good coder however will take many years to acquire. I would be surprised if someone got to a more senior developer role in less than 4 years and going to architect before 6. Only then you will again be able to shape things. Until then you will have to implement what other - often a lot less qualified product managers have thought up for you to do. Often of the code will be for /dev/null as most projects fail in any case before hitting the user. I sometimes think salaries in tech will always be good as frustration tolerance is never going to be a commodity.
I found product management a very difficult proposition. It can be incredibly hard to add value in that role but then on the other hand it can be one of the most powerful and decisive roles too (Jobs do I need to say more). There is a lot communication and coordination and that can be fun but also can feel void. Shaping from that position takes serious political skills to acquire the necessary power and to wield it.
The way I think about these changes:
- what can you leverage into the new role?
- is there a plan B?
- do you truly like that type of work (tools, processes, travel, challenges, conflicts)?
- do you like to work closely with these type of people?
- what drives you? Long term vision?
- what are your strengths?
- what technical and interpersonal skill you want to learn? Will you learn anything new?
Would I have hired you when I was team lead way back? Iff you showed up with lots of enthusiasm for coding and passed our structured technical interview - maybe into a junior developer role. Willingness and ability to change was a key criteria for me. But I know I probably had to argue both technical staff and HR. I never worried about someone going for my role but maybe with you I would have worried about that on my side.
By all means learn coding. You may however want to give some thought on possible paths, risks and contingencies. Coding - considering your starting point - is certainly one option but comes with a high risk of significantly lower ability to contribute and ultimately benefit from it. Project management may be another. Consulting in the area of requirements may be another.