Software developers come from many different backgrounds, and each person brings unique ideas to the table, but the one thing we all can agree on is our greatest fear: not being able to find the answer to our painstaking coding problem on StackOverflow. Running into issues and not being able to find a quick, applicable solution can derail your work day, and no one ever wants to get stuck creating hacks and workarounds to make up for bugs in third-party libraries.
One of the best lessons I learned while re-tooling a legacy front-end is to invest time up front researching and evaluating potential packages before getting too far into the implementation process. Cutting edge technology can be incredible, and often can accomplish things that no tools before it could, but that doesn’t always mean things will be smooth sailing.
As a developer, it can be easy to get lost in the details of a new feature you’re coding without stepping back and assessing the bigger picture. When you start working on a project from scratch, poor architectural or design decisions are less likely to surface as roadblocks while things are small-scale. Over time, however, projects and teams grow, and those decisions become much more prominent. Working with a massive legacy application helped me rethink my approach on a day-to-day basis, giving me the holistic perspective I needed to make smart decisions. Enterprise applications must be built to last; overlooking things like performance, security, automated testing, and developer experience will undoubtedly set you and your team back down the road.