Download our guide on Design & Technology trends for 2024

10 Software Development Challenges Everyone Hates

10 Software Development Challenges Everyone Hates

1. ALWAYS BEING BEHIND SCHEDULE

Stick with Scrum. Short development cycles and the ability to iterate within the process allows development teams to react and adapt better to time constraints. Retrospectives and Sprint Reviews are good times to discuss issues around delivery and scheduling. Use that time to be proactive in identifying risks and sharing best practices to keep the development on track.

2. CHANGING PRIORITIES

When priorities change quickly, it affects development and can affect morale as well. Even worse, when these priorities shift in the middle of the sprint, it can throw the timeline out the window. Flexibility is the core of an Agile development methodology and building it into your planning and development process can help a team adapt and mitigate the damage of a last-minute change.

3. TESTING ENVIRONMENT NOT MATCHING PRODUCTION

But, it works on my machine.” Sound familiar? Different settings, dependency versions, data volume, network latency, time differences, traffic, or even the input language can create chaos. The closer you can get to the configuration and data of your production environment while testing a problem, the less you have to worry about with the fringiest of cases such as “the memory of the VM was exhausted as the hard-drive is full while updating the TPS report with a Cyrillic character in the subject.”

4. WORKING WITH OLD TECHNOLOGY

Engineers usually want to work with the latest and the greatest but sometimes working with older technology is a necessity due to project needs. At Unosquare, we find talent to augment our clients’ in-house engineering teams, and the newest technologies get our developers the most excited and engaged. Although dialing back the clock is not as much fun as looking into the future it’s a necessary part of the job.

5. UNREASONABLE DEADLINES

Candid and consistent communication is vital to maintaining a healthy project. If the development team is not involved in planning, if the team’s feedback does not when setting the timeline for deliverables, there will be feature creep, scope creep, all kinds of creeps. It is important for team members to raise their hands early and often to keep delivery timelines reasonable. Maintaining Scrum ceremonies will support reasonable timelines as well.

6. LAST MINUTE PIZZA FROM PROJECT MANAGERS

This one is easy. It’s an announcement that you are working late in the form of food. It doesn’t cushion the blow, especially if it was unexpected. Maybe it was expected, and you were holding out hope that it wouldn’t happen, and now that delicious pizza tastes like you won’t be out of the office any time soon. And, there better not be pineapple on that pizza.

7. NON-TECHNICAL TECHNICAL TEAM MEMBERS

Speaking from experience as a former Product Owner, I needed to be put in my place a few times by Team Leads. Once I had my ears open and my mouth shut for a while, I learned a lot and was able to speak more to the technical side of things concerning planning and grooming. Development teams should have a Tech Lead, and a good relationship and candid communication with talented professionals like this will only serve to improve performance. If you are non-technical, try and learn as much as possible from your technical team members and develop mutual respect.

8. WHEN EVERYTHING IS URGENT

Simply stated, when everything is urgent, nothing is urgent. We already mentioned the problems with “changing” priorities, but how about when everything is a priority and is needed right now or yesterday? “Crying wolf” will only water down the impact of a real priority when it comes along. Working with the development team to prioritize effort by the complexity and along a roadmap is an effective remedy.

9. MEETINGS THAT COULD HAVE BEEN AN EMAIL

Use communication platforms to communicate ideas, changes, needs, etc. If the team can’t get the gist from there, escalate to email. If there is still confusion, call a meeting. Don’t start with the meeting and work backward. Meetings and co-location are valuable tools and should happen regularly. However, if they are happening too frequently, and with little action items from resulting, it’s best to communicate through other channels to avoid disruption of the team’s schedules.

10. TABS vs. SPACES

I interviewed a few engineers, and it started a fight. So…

– thanks to Luis Gonazalez (Sales Enablement, Unosquare) & Cesar Hernandez (Delivery Services, Unosquare) for their contributions to this post

Share:

Ready to dive in?
Start with Unosquare today.

Unosquare is a full-service, international digital engineering firm. Through our centers of excellence we recruit, train and professionally manage talent to ensure expertise from discovery to delivery.

Let's work together