Our launch of a large retail client's Magento e-commerce website was a big moment for Integrity. The new site is the result of a year-long effort that included a brand and marketing overhaul and redesign of the company's corporate site in addition to the design and development of the modernized e-commerce site.
Just like any large-scale, complex web application development project, the e-commerce site alone was a major undertaking. And as with any huge project, we learned a lot about the tools we used and – more importantly – about our process and how it can work for each of our projects. Here are seven of those lessons.
Part of our reason for choosing Magento for this particular client was the prior experience of our lead developer. But the other developers on the project had to learn the ins and outs of the platform so that we could build an awesome experience with it. Learning anything new takes time, and it's important to be prepared for that.
Magento would have a been a whole lot harder to learn if we'd tried to do it without using all the training, support and troubleshooting resources available around the web and through Magento itself. This is the beauty of super popular open source platforms! You're never stuck on anything for too long because you have thousands of helpful resources at your fingertips.
One hiccup we ran into was our overestimating what Magento included "out of the box." The sample store we used as a reference point gave us the impression that there were more default features than there were in reality. It's really important when gearing up for a complex development project that you have a full understanding of the platforms and tools you're using. And that means budgeting for plenty of research.
A complex web application takes a lot of hard dev work, which means recruiting dev support team. But it's still crucial that the other pieces of the project aren't forgotten or underestimated! For example, our recent project may have required fewer long days had we realized early on that the content portion of the project might benefit from a larger support team (the same way the dev portion did).
It's easy to define a project team's roles. It's much harder to make sure everybody sticks to those roles through the whole project. Yet, the need for a core team that starts and finishes the project together is more important than ever when it comes to building elaborate web applications. This means being responsible as individuals, knowing what our own responsibilities are and budgeting our time to make sure we get them done.
"We tend to think of our project roles as finite phases," says Web Engineer Kevin Collins. "But the more we can mesh the roles into a continuous effort as a team, the better the result."
This means the content lead can't just finish writing and pass the copy off to the designer. And the designer can't just build a stack of PSDs and pass them off to the developer to code up. Instead, the entire team must collaborate on each of these phases, guaranteeing that quality is never sacrificed in the process.
The most important thing to remember no matter the size and scope of a project is that communication is the key to success. If even a single team member decides to fall out of touch, the whole project is at risk of crumbling. So it's critical that everybody shows up at meetings, speaks up when there's a potential problem and lets the team know the status of their work.
We're always excited to take the lessons we've learned from one project and apply them to our next. That's the benefit of Integrity's flexibility. We're always prepared to tweak our processes for the sake of improving!
Looking for someone to help you with your next web application? Let us use our experience to your advantage! Give us a call.
Want to make a good first impression? Pay attention to your homepage (your users already are!). Here are some tips for great homepage design.
How do you make a minimum viable product that gets all parties' buy-in? You prototype. See why prototypes are a required step in app design.