I am a frontend developer and I have been asked from my boss to assume ownersip the project of a colleague, but it is not really official.
This colleague is a backend developer with hardly any true frontend skills, neither does he have a feeling for professional user interfaces. The code base is really bad and doesnt adhere to best practices, difficult to maintain and expand upon. The amount of technical debt is relatively big and he constantly does things in secret that aren't part of the projects requirements, making it difficult to meet deadlines. He assumed the role of frontend developer for that project 3 months ago, while our lead frontend developer and I were away from office.
Now I have been asked to assist him and if possible assume the frontend part completely, while he resumes his focuses on his key role as a backend developer.
There are a few problems:
He hardly sticksrarely follows the task split we agreed to his tasks, which can result in duplicated work (basically not letting me do my thing)
All his progress is on a local git branch, so you cant see what he is really doing unless he is done and does a pull request.
If I ask him of something, he tells me he will deliver, but then he doesn't. It takes much longer than expected.
Due to corona everyone is working from home. He is the only one very difficult to contact. He is always offline on slack.
The code base is really complicated, error prone and is not covered by tests.
The software being developed is of strategic, long term importance and will have rollouts to multiple firms in the future.
My colleague is the oldest and has the most backend coding experience, hence everyone is careful about criticizing him.
I am his deputy and specialized in frontend development. So we are on equal standing in terms of hierarchy.
Now I'm trying to not assume the role asked by my boss, but there is no clear standing. He tells me to take the lead and that my colleague should concentrate on other stuff, but then tickets are assigned to him. It is very difficult to work with my colleague, and my boss is being too diplomatic. I already told my boss that im not going to work on this project until the roles are clear, regardless of the consequences.
I was thinking of creating an entire new code base without him in my freetime, since they wont let me refactor his horrible code at office times (due to costs). I estimate 2 weeks and then I will present it to my boss and hope that I can convince him of the drastic difference in usability, quality, maintainance and test coverage and that I could take over from there. They wont pay a penny since it is done in my free time but at least we have a clean code base and working user interface.
What are your thoughts and how can I assume my role without people hating me?