I'm the tech orientated founder (the other is the business guy), not the best coder but I understand my domain and know my abilities.
We brought in a guy as CTO to help us move past problems we were having (feature creep, project management, enterprise level etc.).
The guy has a lot of experience as CTO (I had very little, also little as a coder), and he was instrumental in getting us to the point of launch where we were enterprise grade ready (as opposed to hacker ready).
Now he is advising me to leave, that I'm not a good coder, that he wouldn't hire me if I wasn't already a founder and not what the company needs.
I have improved significantly in the last few months from where I was (generally unstructured development, no tests, poor formatting / naming etc., but functional, generally coding to working with others instead of by myself) but he has said that it's not enough.
We have hired another coder who I get along well with and I have learned from.
My question is, does he have a point? Is this something that is common? Has he overstepped the boundaries?
EDIT: He's not asking me to leave now, since I'm still desperately needed, but in 3-6 months time after we have raised more funding.
Does he want me to leave the company or does he want me to stop writing production code for the product?
If its the first one, there is likely a personal issue between the two of you that needs to be resolved one way or another.
If you think the second option is what he is really trying to communicate, then I would look for other opportunities to contribute to the company. It sucks to grasp your own limitations and admit that you might not be a good enough coder to contribute to the product at this point, but this is a critical time for the future of the product. Any technical debt acquired at this phase of development is going to be very costly to pay off later since you are developing the core of the system.
However, you are a founder of the company, and I am assuming very passionate about the company's mission as well as financially motivated to see this thing through. There are tons of jobs that will need to be done as you guys grow, and each one of those is an opportunity for you to contribute above and beyond what a new hire off the street could accomplish. A lot of those jobs can also take advantage of your coding skills to either automate processes or utilize your deeper understanding of how the product works to better support it.
This is of course assuming that you guys have the cash in the bank to pay you for this work, if that is not the case then the situation is a little trickier and you will have to explore other options.