Software Development Challenges Faced by Modern Enterprises
Developing software isn’t easy when technologies and industry standards are constantly evolving.
Between the rapid pace of change, mounting pressure to accelerate digital transformation, and the uncertain economic, social, and political climate as well as finding and paying for skilled development talent, organizations have their work cut out for them.
Below, we’ll take a look at the biggest challenges for software developers in 2021 and what they can do to overcome them.
1. Keeping Pace with Innovation
We’ve been talking about digital transformation for years at this point, but many companies are still struggling to bring their systems and processes into the 21st century.
Dealing with outdated technology is a huge concern: legacy systems are a prime target for bad actors, end-users can’t locate information (and if they can, it’s often inaccurate), organizations lose time and money to manual processes and poor decisions. On-premise hosting is at odds with remote work. And, of course, there’s all the missed opportunities hiding out in poorly-managed datasets.
Research from McKinsey found that 45% of digital transformation projects deliver lower returns than anticipated. There is a 45% chance that the average digital transformation project will deliver less profit than expected.
According to the firm, successful transformation initiatives require the following:
- Clear priorities with a direct link to measurable business goals
- Mature Agile development practices
- Investments in the right talent—think data science, analytics, cloud, AI/ML, etc.
In a recent interview, Gartner’s Kristin Moyer brings up a critical point.
She says that “digital business is about using technology to create new products, to create new business models, new operating models. And we distinguish between optimization and transformation. Optimization is where you’re using technology to improve customer engagement or sell more of your existing product. It’s about doing old things in new ways.”
Optimization, of course, is critical, but it shouldn’t be confused with transformation.
Transformation, Moyer says, is about doing “new things in new ways.” It’s about using technology to create new business models, revenue streams, and products that change things in your industry.
By treating the two as interchangeable terms, you may end up aiming too low to achieve true transformation.
Beyond the initial transformation, you’ll also need to make sure you’re always thinking several years ahead—preparing for, say, how you’ll eventually incorporate quantum computing into your strategy, embrace blockchain, whatever.
2. Cultural Change
3Pillar’s Rodolfo Carmona says the biggest change he’s seen in the software development space has nothing to do with technology—which, by nature, is always changing.
Rather, the biggest change is how teams work.
Today’s development teams rely on processes and organizational structures that allow them to quickly adapt to constant change and shift the focus away from plain innovation and instead zoom in on enhancing the user experience and responding to customer needs.
He says, “one of the best practices companies are currently following is making sure that every person on the team understands the software development world is moving way too fast. That means that they need to adapt to the culture quickly and learn to be more creative.”
Essentially, the dialog becomes more about working together to solve a high-stakes problem.
While it may sound simple, changing internal processes and eliminating silos is one of the biggest challenges for software developers—and organizations in general. It’s also one of the most important: in order to maximize the value of new tech initiatives, organizational culture needs to align with its strategy.
Without that alignment, it becomes impossible to develop organization-wide data literacy, become truly customer-centric, or successfully use Agile and DevOps practices to build new products.
The challenge with cultural change is that it has to come from the top and everyone needs to buy in, or else it falls apart. CIOs/CTOs should start by working with HR to determine what technology investments and structural change needs to happen to support cultural change.
Then, focus on developing a communication plan that makes the case to other stakeholders—likely department heads who can help champion new initiatives and help their teams overcome resistance.
You might also try recruiting a small team to run a pilot project that demonstrates value of cultural change through quick wins with a measurable impact on business processes/performance.
3. Customer Experience
3Pillar’s Eddy Vidal Nunez says it’s critical that companies “develop a deep understanding of the market and the importance of CI/CD and its role in the customer experience.”
According to McKinsey, the future of CX hinges on… you guessed it, developing a data-driven strategy. While the firm predicts that this process will become easier thanks to the rise of user-friendly predictive analytics tools, organizations still need to understand what they’re looking for and develop a big data ecosystem for storing, securing, and surfacing insights to the right person at the right time.
A few questions you’ll need to address to get started:
- What information do you need to collect?
- Do you currently own that information or will you need to invest in additional tech to gain access to that info?
- If you do own the necessary data, is it integrated into a centralized location?
- Can you verify its accuracy?
- What channels will you need to gather data from?
- How will you route that information back to the development team?
- How will insights be used to improve the experience?
- How will you know if your efforts were a success?
4. Data Privacy
Organizations need to factor data privacy laws into the development process rather than treating it as an afterthought.
While this has always been important, the regulatory landscape is becoming more complex. At the same time, customers are starting to pay close attention to how companies use their information—and profit from it.
Part of the challenge is the ever-changing regulations that come with strict non-compliance penalties.
Europe’s GDPR and California’s CCPA have been in place for a few years, and California just passed stricter regulations for how consumer data is used, extending the protections outlined in the CCPA. Virginia recently passed their own legislation, and more states have bills making their way through the pipeline.
Any business with customers in Europe, CA, VA, etc., must comply regardless of the rules in place in their home state or country. Knowing this, organizations must make sure their applications are easy to adapt as rules change, and more requirements enter the fold.
As 3Pillar’s Javier Trevino points out, managing your data privacy strategy should start with understanding all rules and regulations as they relate to your industry. He says, “industry verticals will define how PII should be secured. In healthcare, there’s HIPAA; for payments, there’s PCI DSS.”
You’ll want to address those needs first. Otherwise, you could end up relying on workarounds that don’t meet regulatory requirements.
Once you’ve landed on a solution, you can start focusing on meeting the general requirements. From there, you can develop a plan that ensures complete transparency, tightly-controlled data flows, and includes data protections, like encryption, VPNs, and more.
[adinserter name=”Software-Development-eBook-Offer”]
5. Cybersecurity
As more organizations embrace the IoT, data streaming, cloud-native apps, and remote work, the number of cyberattacks have risen sharply. Worse, cybercriminals are becoming more sophisticated, gaining access to sensitive information like HR records, IP, and consumer data.
And things could soon get worse.
Per a recent Forrester report, it’s only a matter of time before AI-powered hacking goes completely mainstream—though the tools are already widely available through open-source AI projects.
Big data—along with widespread cloud adoption and a growing embrace of IoT solutions—has made it impossible to detect unsecured endpoints, vulnerabilities without the use of AI-enabled monitoring tools. The impending arrival of 5G/WiFi 6 could soon exacerbate the challenge—as the expected rise in data streaming will likely generate a massive influx of data. Organizations already face significant challenges managing and securing their data and need to make sure they’re prepared for the big wave of big data when it hits.
Javier Trevino says, “static analysis tools should be executed against code bases to identify any security vulnerabilities using standards outlined by The Open Web Application Security Project (OWASP).”
This gives you a starting point for mapping out your threat surface and identifying vulnerable areas. And from there, you can start tackling challenges one by one.
6. AI and Automation
AI-embedded software has become the default pretty much across the board—from sales and marketing tech to logistics and supply chain management and automated production lines.
Implementing AI and automation presents challenges for software developers on multiple fronts, including:
- Determining when to automate a process.
- How to effectively “power human augmentation.”
- Navigating the many challenges of test automation.
- Handling UI changes, multiple error handling, script execution, etc.
To get around these issues, organizations will need to first develop a strategy for getting started.
It’s also important to understand that successfully automating processes demands skilled resources—you’re not replacing human talent with robots. Instead, the focus should be on applying automation in areas that waste workers’ time or are particularly vulnerable to human error.
Further, ensure you choose the right tool for the job. That means, rather than focusing on automation as a broad, multi-process effort, you’ll want to take it one goal at a time by identifying the tools that best address hyper-specific needs.
7. Data Literacy
Just a few years ago, companies needed to hire data scientists with advanced skills in SQL, R, Python, big data analysis, data extraction, and normalization to help them analyze and act on big data insights.
In 2021, AI, ML, NLP, etc. technologies have made their way to the masses. They’re more affordable, accessible, and relatively user-friendly—embedded into the business tools we use each day.
While it doesn’t take a data scientist to run a report these days, many organizations still aren’t quite sure how to properly implement these tools and put AI-driven insights to work. According to a Harvard Business Review study, participants struggled not because of a lack of technical know-how but because of poor problem-solving skills.
Researchers found that participants struggled to:
- Ask the right questions
- Understand what information is relevant
- How to validate the integrity of the data
- Test hypotheses
Development teams and stakeholders need to work together to develop solutions that enable end-users to become more data-driven and self-sufficient.
Think self-serve business intelligence tools, access to AI-driven insights and intuitive reports that help end-users quickly answer specific questions relevant to their role.
Solutions that provide visualizations and make it easy to turn data points into a story make it easier to understand the big-picture. However, you’ll also want to make sure that problem-solving tactics and tools are part of an organization-wide continuous training initiative.
8. Cross-Platform Functionality
Today, there’s the expectation that companies need to offer a unified—or rather “seamless”—experience across all platforms, channels, and devices.
One of the biggest challenges facing software development teams is the pressure to maintain consistency—in tone, messaging, and aesthetic across all touchpoints and be ready to provide on-demand support wherever customers decide to make contact.
3Pillar’s Abel Gonzalez Garcia shared an example from a project he worked on. He says, “in one recent case, the application that we were testing was designed to work on different OTT platforms like Roku, Apple TV, Fire TV, Android TV, and Xbox. This is a significant challenge, as we need to have the same functionalities on all the platforms, however, sometimes the platform’s architecture didn’t allow us to implement certain things, and we needed to figure out a workaround.”
9. Budgeting
Many companies are working with a smaller budget than they anticipated due to COVID shutdowns and lost business. Now, they’re forced to figure out how to do “more” with far less.
Even organizations that have fared relatively well should rethink their budget, making sure that spending aligns with current priorities.
According to Gartner, top-performing organizations are directing more resources toward new business priorities post-COVID. Analysts recommend that CIOs respond by re-evaluating business cases to make better use of investments and reallocate internal resources to prioritize digital innovation.
For instance, if you’re no longer renting office space, you might use the money you’ve saved to make strategic hires, launch a new product, partner with an outsourcing company, etc.
10. Talent
Organizations face major staffing challenges, too.
There’s the infamous IT skills shortage where you’ve got small and mid-size businesses competing with multi-billion dollar enterprises like Amazon, Google, and Facebook for in-demand, highly-specialized skills. This, of course, means attracting top US talent requires smaller businesses to match the kind of salaries and perks those giants can offer.
Companies need to make sure they understand what they’re looking for, whether they’re hiring in-house or outsourced talent.
According to IBM, many companies are still focused entirely on addressing skills gaps related to hard skills like data science, AI/ML, cybersecurity, etc., when they really should focus on developing a new set of skills.
They need people who:
- Understand how data ecosystems work—how information flows between applications, devices, and infrastructure, what metrics to use to track performance or identify vulnerabilities.
- Know how to create policies and governance that maintain data integrity, security, and support knowledge sharing.
- Have strong soft skills such as empathy, active listening, communication, problem-solving, creative thinking, and adaptability.
Organizations also face the challenge of upskilling existing developers and engineers to ensure a “future-proof” workforce. That means you’ll need to rethink the entire training and onboarding process, as well as establishing a long-term strategy for making sure your team is up to speed on the latest tools and tactics.
Note that “hard skills” are incredibly essential as well. That said, you can use outsourcing to fill gaps and provide ongoing training opportunities to ensure that in-house talent keeps “leveling up” the skills that align with your big-picture plan.
Final Thoughts
While overcoming today’s biggest software development issues and challenges won’t be easy, there is a silver lining: overlapping solutions.
Whether organizations are trying to enter new markets, get ahead of emerging security threats, or keeping up with shifting consumer needs, a few key things need to happen.
The culture must support these initiatives.
Data literacy must be embedded across all functions.
Organizations must have complete visibility and control over their entire data ecosystem.
3Pillar’s experts can help your organization tackle the broader challenges we’ve outlined above, as well as those issues and pain points unique to your industry or business.
[adinserter name=”Software-Development-Closing”]
Stay in Touch
Keep your competitive edge – subscribe to our newsletter for updates on emerging software engineering, data and AI, and cloud technology trends.