What’s the best advice you’ve ever received that’s helped you in your chosen profession?
At RocketBuild, we know that great programming is about solving problems, and great mentorship and inspiration is what helps push developers forward. We asked our crew, what advice has made an impact on their journey, so that we can share it with other innovators and software development teams.
They opened up and shared a few key tricks of the trade that have stuck with them over the years of building custom applications.
Gwen Faraday, Senior Software Developer
“The best way to learn a new codebase is to write documentation for it.”
It can be daunting to jump into a new codebase when you work on a new project or first get hired at a company. What is the best way to tackle learning the new codebase? Write documentation for it. Documentation is anything you write in addition to your code to help someone understand how it works. In this case, you are helping yourself, and probably your teammates, understand how the code works. Documentation is really an undervalued learning tool for developers. The sooner you start writing documentation, the better programmer you will become.
Kyle Huff, Software Developer
“Communicate with honesty and intent.”
Being direct with members of your team helps build respect and cohesiveness. Whether you’re giving positive feedback, asking questions or challenging an idea or standard, communicating with honesty and intent is fundamental to productive conversation for both you and your organization.
Connor Hess, Technical Project Manager
“What code DOES is the asset—not the code itself.”
Perfect is the enemy of good. In the software world there is always a better way to do something. Don’t allow yourself to go down that rabbit hole. “A line of code is not an asset, what the code DOES is the asset.” ~Tyler Weiss. Getting to a reasonable, timely, and secure solution… building that solution and moving on is always going to work out better than trying to perfect every piece along the way.
Jon Krouse, Software Developer
“Break stuff!.. then, fix it.”
Don’t be afraid of being wrong or breaking things. When you learn to fix something you’ve broken or something you did wrong, you will come away with a much better understanding than if you had gotten everything right on your first go.
Marcel Cornett, Software Developer
“Development can be pretty intimidating. Don’t be concerned about not being able to figure out a problem right away.”
Working as a developer, you will make many attempts trying to solve an issue. While frustrating at times, you gain a healthy amount of knowledge from this trial and error process. Embrace the fact that you will fail at first, but you will gain the knowledge to be better next time. Learn by diving right into code and trying to get something to work. With time, you’ll be teaching others the same lesson.
Tyler Poling, Director of Technical Solutions
“Practice empathy with both clients and software teams.”
From a consultant perspective, it’s important to be empathetic with both clients and development team members to help see things from each others’ perspectives. Any frustration on either side doesn’t come from a negative place; it comes from a desire to be understood, heard, and appreciated.
Caleb Francis, Senior Software Developer, Team Lead
“Think through the lens of the end user to guide decision making.”
As a developer it’s easy to get caught up in the intricacy of code and only worry about the systems inside. Sometimes I forget that at the end of the day, all of this work culminates in an application that is used by humans. The best advice I’ve received is to remember that I’m writing software for people. It helps me make decisions and impacts how I write applications. I want to make sure it’s nice to use and works well, and when it doesn’t, not be frustrating to figure out. It’s not enough for code to be clean and well-optimized, it also has to produce good software.
Tyler Weiss, Senior Software Developer
“Always be willing to teach something new to a fellow programmer.”
Software development is about continuous improvement. Personally, I want to learn and share and want others to be excited about learning. John Carmack said, “Programming is not a zero-sum game. Teaching something to a fellow programmer doesn’t take it away from you. I’m happy to share what I can, because I’m in it for the love of programming.”
Heather Hoffman, Chief Operations Officer
“Share your vision with the development experts and allow them to take the wheel. Your vision will go further, faster if you rely on them to do what they do best.”
Having a very clear and solid, if not complete, product vision is crucial for creating a successful product. It has to resonate with stakeholders and your development team. It will allow your development team to take the reins with a plan that’s aligned with your goals and is right for your users.
John Justice, Senior UI/UX Developer
“Don’t worry about being original. It’s more important that you make something useful.”
User interface design focuses on anticipating what users need to do and making that as easy and efficient as possible. Consistency and predictability in an app design help the users feel more comfortable and get things done faster.
Todd Kersey, Senior Software Developer
“Break large tasks down into smaller, manageable parts.”
It is easy to look at a large project or task and get overwhelmed. Break a large task into smaller pieces to allow yourself to focus on one component at a time. Once the small parts are completed, the larger project will come to life with less stress and overthinking.
Nathan Zarse, Director of Marketing
“Stick to following the MVP approach of building software.”
Any designer, innovator, or entrepreneur should be prepared to follow an MVP style approach to building their software. If you skip steps and assume you know what users needs, desires, and behaviors are, your risks are going to increase. Low fidelity mockups, prototyping, and continuous improvement will save lots of dollars and effort over time versus trying to jump ahead too far, too soon.
Jason Ward, Chief Innovation Officer
“Software must solve a real world challenge.”
User adoption is the most important part of any software development process. If the software doesn’t solve a problem or alleviate a pain, it doesn’t matter how good the code is. Make the value of the software obvious and immediate.