Pros
Probably the only one I could find is flexibility, up to a degree.
Cons
Out of all my engineering roles, this was by far the least enjoyable. The work environment is highly toxic, driven by unrealistic expectations and poor management practices.
Tasks are regularly estimated at 8 hours but realistically take several weeks to complete. Despite this, there’s constant pressure to “move faster,” and engineers are frequently blamed or yelled at for delays that stem from impossible deadlines and unclear requirements.
The codebase is in terrible shape, “spaghetti code” doesn’t begin to describe it. It’s a patchwork of quick fixes and workarounds, with zero documentation and massive files (often 5,000+ lines) containing functions that handle dozens of unrelated responsibilities. Maintaining or extending this code is a nightmare.
Management is extremely micromanaging, constantly asking for updates and pressuring you about delivery times. Most tickets are vaguely written, often require multiple rounds of clarification, and the scope tends to change midway through development. It’s common for new requests to be added to the same ticket without adjusting timelines, and then you’re questioned about why it’s taking longer.
Long hours are the norm, including weekends, with no compensation or recognition for the extra time.
If you’re a Software Engineer who values good engineering practices, clear communication, or work-life balance, this is not the right place. The development experience is frustrating on nearly every level.