I am a Software Engineering intern at a big company.
Few weeks back, I was given a simple task to do, imitating the behavior of another component.
Reading the code, I found the current implementation rather flawed. It was introducing tight coupling between components, and the effort put on it looked rather redundant: additions to the codebase would result in duplication of work.
I came up with an alternative solution, using a different library, which would extremely reduce future repetition, at its own costs:
- Nobody else knows how to work with it, so I am pretty much on my own.
- It is not implemented elsewhere within the team, so I have to "decide" the best practices on my own.
- Most importantly, unexpected problems are coming up every now and then, which are delaying the supposed "3-day work".
I'm pretty much sure this implementation would save months of developer effort, but I also feel bad delaying the 3 days' work (though we don't seem to be having hard client deadline on us).
How do I approach my team about improving the code quality? I want to make this work, but make sure I've considered the rest of the team.