Web developers play an invaluable part in a company's success. However, despite their essential role on the team, many website development challenges remain.
In this post, you'll learn more about the most common challenges that individuals in this industry face. Moreover, you'll discover how developers can successfully navigate these obstacles thanks to the sense of community many report.
- What are the five primary web development challenges?
- How to Navigate Common Website Development Challenges
- Is there a sense of community to help navigate common web developer challenges?
- Navigate Web Development Challenges as a Community
What are the five primary web development challenges?
Debugging code, keeping up with new technologies, and communicating with stakeholders, oh my! It's no secret that web developers have a lot to balance in their day-to-day roles.
Let's divide the primary challenges developers face into five main facets. We chatted with developers at HubSpot to dive into these dilemmas, learn more about how they arise, and how to remedy them.
1. Pressure to keep up with rapidly changing trends.
Because the web development industry is in perpetual growth, many developers report how difficult it is to keep up with constantly changing trends. Liz Shaw, a Senior Software Engineer on HubSpot's Frontend Platform team, says, "There can be a lot of pressure to follow, learn, and/or name-drop the latest framework releases or other new tech." As a result, many companies expect developers to have a robust understanding of various topics.
Athena Marie Ozanich, a Full Stack Web Developer and Software Programmer who writes for HubSpot's Website blog, also recalls how this rapid evolution impacts standardization and consistency. "Developers also face issues with standardization and consistency of resources, as well as lack thereof. Finding the right up-to-date information can prove difficult since the landscape of technology is changing so very rapidly," she says.
2. Fighting impostor syndrome.
In addition to external pressure to stay abreast of constantly evolving trends, many developers feel internal pressure too. And that comes in the form of impostor syndrome.
"The two challenges that have remained constant for me throughout my career are fighting impostor syndrome and preventing burnout," shares Mark Nakib, Senior Software Engineer on HubSpot's CRM Pipelines team.
Ozanich echoes this sentiment. "This subject is one of the most common topics I have discussed with students I have mentored in the past," she shares. "Moreover, it is one of the biggest challenges I faced when starting my journey to become a software developer."
3. Building code that works.
The basis of being a developer is creating effective code. However, the pressure is amplified if you work on a team that makes a highly visible product used by thousands of people.
If you're a web developer that works on a team that creates products thousands of people use, this pressure is amplified. "We create something that is used by hundreds of thousands of users," says Lorenzo Signoretti, a Tech Lead at HubSpot on the Growth Onboarding team. "And so whenever we make changes, we want to make sure that the impact on the user experience, the performance, isn't compromised, that it's improved."
Alessio Michelini, Senior Developer II at HubSpot, also echoes the necessity of creating successful code that delivers on the experiences users expect. "[It's important] to test your code properly, to catch bugs earlier, and keep your code to high-quality standards."
4. Ensuring products are accessible to all users.
While correct code is essential, that's not the only priority for developers: They must also create code that's accessible. "[One of the main challenges developers face is] ensuring that the things we develop are accessible to all users," says David Ding, Senior Web Developer.
Accessibility is also something to keep in mind for developers that create products many people use. "[At Hubspot] our tools are the front office for any business potentially from very small businesses to very large ones," says Signoretti. "This means that as engineers, we need to make sure that our features work across a spectrum of different user bases — different plans, different geographies, different languages. And all of these, every user across these dimensions, is a first-class citizen."
5. Communicating and staying in sync with other members of the team.
Creating code that works and considers all users' accessibility needs is a lot to balance — and that's not to mention that developers need to stay in sync with other team members.
"It's not uncommon for companies to see developers kind of like a machine on an assembly line turning an idea into code, but the reality is that's an inefficient and problematic way to work for a number of reasons," shares Jon McLaren, Senior CMS Developer Advocate. "Developers are often an under-appreciated power player on a team. For developers to do their best work, they need to be involved early on during ideation."
McLaren adds that the more thoroughly a developer understands what key stakeholders want, the smoother the process. "The more context a developer has, the more they can avoid implementing something in a way that will prevent problems or save costs down the road."
How to Navigate Common Website Development Challenges
Now that you have a more thorough understanding of some of the most prevalent issues developers face, let's discuss how to navigate them successfully.
1. Have a solid understanding of the basics.
"The best developers focus on and have a deep understanding of the fundamentals: JavaScript, CSS, web APIs, client-server architecture, and programming constructs," shares Shaw. "They can then apply that fundamental knowledge and observed patterns, when needed, to a variety of technical contexts more easily. Not only does this help evaluate trends, it makes apps and libraries easier to parse and build. Before getting swept away in the latest trend, study and understand the fundamentals that produced these trends. You'll be a stronger developer because of it."
2. Remember that failure is inevitable and a sign of growth.
"People from many industries have described experiencing this bane of new territories. Learning something new, especially when it is as complex as development is, can be a terrifying experience," shares Ozanich. "But I want to say to anyone who has ever struggled with it … do not give up."
She also reminds us that as you get into your groove as a developer, these feelings can lessen over time. "Impostor syndrome is fleeting, and it wanes and waxes; sometimes, you'll feel it, and sometimes you'll know better. Focus on the latter, and all those little wins will start to overcome that sensation until it's all but gone."
Nakib also reminds us to view failure as a stepping stone rather than a personal shortcoming.
"I see impostor syndrome as a side-effect of our results-oriented culture butting up against the human reality that failure is not bad, avoidable, or even optional. Failure is an integral part of growth and learning. And so, the real issue to me is the unreasonable pressure and expectations we put on ourselves to be perfect at everything we do, to constantly get better at what we do, and also do more, but never fail or be bad at anything."
Nakib believes that by reminding yourself that no one is judging you as harshly as you are yourself and leaning on teammates who value you, it's possible to reduce how frequently you experience pangs of impostor syndrome.
"I think the remedy is surrounding yourself with peers, managers, and a company culture that accepts failure as a prerequisite for growth. Frequent, honest, and kind communication is so critical to mitigating impostor syndrome, because you need to know where you stand with everyone around you, and you need to know you're accepted and trusted. And the harder part is believing them, but I think that comes with time."
3. Test your code to ensure it delights users — and helps your team.
Every web developer's central mission is to create code that delights users and delivers on their expectations. To successfully achieve this, it's essential developers test their code. However, Michelini explains that making users happy with their experience isn't the only reason devs do so.
"Testing is a key part of my job, it's not the most fun, but it's a necessary 'evil' as it helps me write better code, that benefits the end user but also the developers around me," shares Michelini. And that allows the entire team to streamline the process and catch bugs faster. From there, other developers can continue building on code evaluated for effectiveness.
4. Establish accessibility as the priority by following guidelines.
"More and more people are realizing how important accessibility is," shares Ding. "It makes everything more usable for everyone. It makes business sense. And, more than anything else, it's the right thing to do."
Luckily, the World Wide Web Consortium (also known as WC3) established the Web Content Accessibility Guidelines (WCAG) to detail what accessibility looks like in practice. “Web developers sometimes have a tendency to chase shiny new technologies, without ensuring that the fundamentals are covered,” says Ding. “We have to make sure our HTML is valid and that we provide the expected and required attributes and keyboard behavior for all of our components, widgets, and applications.”
By prioritizing accessibility, you can guarantee that your code delights all visitors.
5. Keep the line of communication open and form relationships with key stakeholders.
By looping developers into the ideation process of new projects, it becomes easier to create what McLaren describes as a "strong partnership between stakeholders and the developers."
"Speaking from my experience doing agency work, having a designer and a developer grow together, and be true partners on projects thinking through problems together [remedies the challenge of communication]. Sitting in meetings together. That's how you get your best result."
By forming relationships with designers and other key project stakeholders, "You continuously get more and more efficient together and [are] able to tackle more complicated work."
Is there a sense of community to help navigate common web developer challenges?
Most developers report that, yes, they do feel a sense of community. The good news is that regardless of how you prefer to get your daily dose of community, you can find one that suits your style.
“The web development community is eager to share their learnings, and you can typically find resources that fit your learning style,” says Shaw. “Whether you learn best through video tutorial sites like Egghead.io, Pluralsight, or Frontend Masters, to name a few, or are more hands-on and like to contribute to open-source repositories, there’s a place in the community. Find what works for you by subscribing to newsletters, following interesting projects or developers on GitHub and other communities, and joining local meetups.”
Let's dive deeper into the ways people in the field can strengthen their connection to the community to navigate website development challenges more seamlessly.
Find online communities.
"I admin a 15k+ group of web devs on Facebook, and there are often people who want to help other people grow," shares Michelini, whose group offers a digital space for Italian developers to connect digitally. (Pro tip: Look for a similar group in your home country — you could create invaluable connections with others.)
Ozanich echoes these sentiments. "Sites like GitHub, HubSpot, StackOverflow, Dev, and many others have helped to foster a community of unity, solidarity, respect and advancement for not just the developers but also technology as a whole.
Attend events.
Whether you prefer in-person or digital events, scour the internet, and you're sure to find an event that caters to web developers that could answer some of your questions or address your concerns.
"HubSpot has an amazing, supportive, and rapidly growing community of developers. They connect on our developer forums, Slack, INBOUND, and our developer-focused events," shares McLaren. "They frequently create and collaborate on open source projects, answer each other's questions, and refer work to each other. I'm proud to work with them every day in my role as a developer advocate and to have come to work at HubSpot from this very developer community."
If you'd like to try a virtual web developer event, you could consider attending HubSpot.Extend(), HubSpot's flagship conference built for developers.
Lean on mentors.
Luckily, there's an opportunity for developers to lean on mentors to help navigate their questions and get meaningful answers. "A lot of engineers are drawn to the field because they love to solve problems. And so definitely there's a community built around this," says Signoretti. "I also think there are some engineers that are a point of reference for these discussions. They are informal community leaders. People become subject matter experts, and then it's great because everyone else can rely on them. It's one of the best ways of learning in my opinion."
As a leader, Signoretti values mentorship and works to ensure rising developers on his team have the opportunity to experience it firsthand. "I try to facilitate this mentorship in two ways by making sure that for the most junior members of the team, they have the right set of challenges and support when it's needed," he says.
Connect with your team.
There are many opportunities to connect with developers externally, but Michelini reminds us not to forget about the people we work with. "Your best community are the [developers] close to you, the devs you work together every day, and you want them to grow alongside you," he says.
Navigate Web Development Challenges as a Community
Although developers face various challenges amplified by the rapidly evolving nature of technology, it's evident that by leaning on others and viewing failure as an opportunity to learn, devs can continue growing in a meaningful way.