I joined this small company a couple of years ago, of at the moment less than 10 employees. The main product is a SAAS-application where the customer base is growing steadily. The founder and CEO coded most of it himself from the ground up, with the help of the occasional hired hand. I do thoroughly respect what he's done so far with the business, I have not met that many as driven as he is.
Then I was hired as an experienced developer to be some kind of tech lead, with the goals to increase the level of quality and add to the organisational scalability codewise, so we could be able to take on more developers which we already have, and soon hopefully even more. So far I have introduced version control, testing and tried to modernise and set some level of coding standards and guidelines together with my team which works fairly well, still with definite room of improvement sure but on the right track. The issue for me is the CEO. He is self taught, not that it is a problem in itself, but he has not picked up any programming skills further than basically low level tutorials specific to the tech we use. Because of reasons I would never challenge, he spends little time at the office, mostly executing managerial tasks as he definitely should. He leaves early or works some days fully away and then often spends time coding out of office hours. He mostly jumps on new ideas or specific features individual customers has requested and adds them straight to production going past our regular procedures as if he still were the sole developer, care free of the standards that he always sounds very positive about. His work sometimes leads to issues that lands on me and my teammates or just new functionality that we don't know how they should work because we don't have time to go through and when he's not around we spend unnecessary time on questions from customers about them.
I get that we are growing and need to reach higher profitability, but it definitely feels like he chase short term low balls to get cool or large customers which may or may not pay off, and says we (the developer employees) will fix and clean later on but instead becomes lots of small headaches we don't have time to work on anyway because there's always something more important.
I have tried lifting my issues with this to my boss and the co-founder product owner, and they do respond with acceptance and understanding. But at our last employee evaluation I actually got the feedback that I "should try to complete tasks faster sometimes, instead of trying to find the best way possible" but also that they are impressed by the quality of my work in general. I agree that you cannot spend so much time on every task and I accept the premise that I could have a narrow perspective, but at the same time I do believe that the CEO doesn't know about development methods, nor have a theoretical grasp of software architecture or even more than very basic object orientation which makes that feedback a bit hard to swallow.
I'm beginning to think I am not a good fit for this company. I know I have the technical skills, but I guess I miss the softer skills needed to be a tech lead in this type of organisation which I was supposed to and would like to be. I just don't see how I can approach this without being disparaging as i feel like I am already writing this. I'm probably a bit frustrated over feeling like I'm becoming a worse developer because of this situation.
Is it just time to move on and find an opportunity where I could grow those skills in a, for me, better environment? Or is there a better way to handle something like this?