During grad school, I started a project to package a lot of research algorithms into a nice user interface (let's call this project ABCD). I did not have time to get very far, so my department hired someone to take what I did and expand it.
When I finished my degree, I agreed to stay on at the university for a contract position to tie up loose ends. I inherited development work on the expanded version of ABCD. A company that I am interested in working for is going to license ABCD from my advisor and get access to the code and everything related to it.
The problem: the person the school hired did a terrible job with ABCD. Fixing things in the code is almost suicidally-frustrating due to how tightly coupled and messy it is.
I am concerned that this company is going to look at the code and think that it accurately reflects MY coding skills. Although I inherited the development duties, I had other work to do and didn't have time to redesign the system.
How do I protect my reputation so that the company knows it wasn't my fault? The company has been dealing with my advisor and I and they are probably not aware that someone else worked on this before me.
They are not hiring anyone at the moment but I plan on eventually applying and I am afraid they will remember ABCD and think that I caused the screw up.
Any advice?
One option is to tell the company right now how bad things are. I don't want to do this as it might kill the deal for my advisor. The licensing deal is actually two parts: the GUI and the algorithms. The algorithms are well written and is what the company wants. The GUI is just something extra, so I don't want to let that part of the code spoil the whole deal.
EDIT: Some responses suggested that the code in ABCD might be average because a lot of professional code is bad. I've interned at 3 different software development jobs (a research institute, a medium-sized business and a well known software company) and I've never seen anything approaching this.