Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

Overthane's avatar

Problematic, non-conventional project

Greetings! I'm quite new to the Laravel community, so far I'm absolutely impressed with the framework's capabilities and rapid deployment.

Now, to the matter at hand:

I was recently hired by a company as a full-time "App/Web Developer & File/Graphics Designer" (not kidding, actual title on contract), anda few weeks in my employer asks me to take a look at a "Client Portal" that my predecessor had developed for them, so I could make a few upgrades/bug fixes.

Upon inspection I quickly surmised that it was built upon Laravel e began consuming Laracasts "From Scratch" videos and Documentation.

As I progressed with it, the more this projected seemed clunky, disorganised and dirty to me. Now don't get me wrong, I know I'm new to the framework so if I'm speaking nonsense just let me know, but it seems to me that the developer who built this did not make use of most of Laravel's easy deployment and creation capabilities!

It's as if they decided to simply improvise most of the files names, locations, folders, and managed to duct tape it all together to make it seem fully functional.

Alas, for instance, not even the password reset is working!

Anyway, briefing/rant being done now, I'm looking for some guidance on how to go about this project, and also how to explain all this to my employer without seeming like a made up excuse to extend deadlines.

By the way, this was done on Laravel 5.3, and when I joined the company Laravel was already at 5.7, so I'm not really sure upgrading is feasible, considering the "custom" nature of the project.

If anyone's interested, I can setup a temporary FTP to a Dev copy of the project (not using the same databases as live project, and all files inside a subdomain).

Thanks bunches, hope to learn a lot here!

0 likes
2 replies
shawnyv's avatar
shawnyv
Best Answer
Level 13

If there is a decent test suite, you should be able to start refactoring without too much issue. If not, you'll have to do regression test creation prior to starting your refactors, and lots of manual checking.

That being said though - it's always tempting to jump in and "fix" things... Just remember that when you got brought in, the system was working well enough for the client to be happy-ish with it, and your core job is to extend the functionality, not necessarily to "fix" it until you can demonstrate to your boss why those fixes will add value in the long term.

Also remember that being new to the framework, the code you write today will be the "ugly, broken code" of somebody else (or yourself) a year down the road... I say that as I'm going through laravel code I wrote 4 years ago and cringing at how stupid I was.... :D

1 like
Overthane's avatar

@shawnyv

You're absolutely right! Alas, my employer insists that I fix it as is, instead of a new updated platform.

I guess it's like you said, it was already working well enough, I'll start creating topics to get specific help with the listed issues. Thanks!

Please or to participate in this conversation.