20

So I started in a new job a week ago for a two weeks probation period, im getting payed double than my last job but it's so professionally frustrating.

They use a full php stack with a framework called tinymvc that I never heard of and the last commit is from 2009.

Beside this they implement some sort of "flexible" MVC where a great amount of the logic are inside the views. They have one model for each entity (in theory) but in reality one model have methods for a lot of tables.

Beside this the i18n is done by querying the database for all the translation strings and copying it in every user session, so every session file it's about 400kb where around 380 are duplicated translations.

The views folder is empty because they decided to modify the framework to look for the views in another folder called resource's and the development must be done connected directly to the production database

Above all this shit all the many-to-many relations in the database (MySQL) are handled creating a comma separated field on one of the tables, completely breaking the reference integrity.

So, after a week of work I can't stop thinking who the fuck developed this? In which world this shit is okay? How can I work around this big lake of shit?

Comments
  • 0
    @SHA-16384 it's really not so much money, in my country is a lot but in the international market no. Also I was hired only as a developer and I don't think they will hear my complaints.
  • 0
    @tomtom that's right.
  • 2
    @Nastrand stick with it. It may take a few weeks or even months to pick things up. Sometimes things seem odd to start with but once you understand why they are done a certain way they may make sense. And after you've worked there a while and you earn their respect they will be more open to your suggestions for change, especially if you can explain why something is better.
  • 0
    @Jonnyforgotten I don't think that all those bad design decisions are worth getting your head around.
  • 0
    @Ickerday better to learn from other peoples mistakes than your own. Plus if you think there are many jobs out there where everything is all perfect and everyone makes the right design choice each time, you are in for a surprise.
  • 2
    "development must be done connected directly to the production database"

    I must stop your right there.

    Leave.

    Simply take your hands off the keyboard, look around, find your belongings, calmly pick them up and throw them in a bag, stand up, walk out of the building and leave.

    On the way home browse some job boards, because you'll need to work to get money.

    But under no circumstance should you do anything if you're forced to do it on production all the time.

    People get shit wrong. We all do. Doesn't matter how much experience or smartness you have, you'll still make mistakes.
    And it's a question whether the mistake costs you 1 hour, 1 day, or a broken production database and customers that sue the company and a boss that blames it all on you and your mistake.
  • 0
    @Jonnyforgotten Fair point, but I think mine still stands - from what OP said, there's just too much shit in the lake.
Add Comment