A day in the life of a successful software developer is both tremendously satisfying and deeply challenging. And it’s crucial to get help from those around you from time to time. That’s why we’re pleased to give you some top tips from Liquid’s Technology Team.
We hope this might help boost your career as a software developer. Enjoy!
What is the biggest challenge you've encountered over the past year?
Ben Higgins, Senior Application Developer: Navigating popular open-source CMS’s architecture and documentation. Any popular open-source platform comes with the caveat of being “too” community driven to the point where it becomes the wild west in regard to modules and supported features, blurring the line between what code is responsible for what functions. Many WordPress and Drupal implementations tend to suffer from this and become difficult to navigate if not documented/maintained with strict standards.
John Loeser, Technology Manager: Separating from work at the end of the day. Without a commute I find my workday blending into my personal life without realizing it. Many days I must make a conscious effort to disconnect.
Jon Bailer, Chief Technology Officer: This year I was asked to perform work on an application that had not been maintained in over a decade. Without access to any of the source code or documentation this was a major challenge not only technically but also from a licensing standpoint. Thankfully, our partner understood well what they wanted to do, and I was able to reverse engineer the existing application and make the requested modifications.
Josh Kohler, Web Developer: Taking over development and maintenance of a group of apps written in a code stack I am not very familiar with. I had to quickly do a lot of learning and research and become familiar enough with the apps to answer some detailed questions about their architecture on short notice.
Leigh Jamgochian, Technology and Development Operations Manager: The largest challenge this year was dealing with the transition from an office to remote and to a hybrid. The various pieces and issues associated with not just technology but logistics. Maintaining a remote workforce is not simple as you can’t just run over to someone’s desk.
What is something that you've learned over the years that you wish you knew when you first started?
John: It's okay to ask for help. I've seen developers spin their wheels and struggle to get something done on their own. If they only asked for help early on, they would have saved themselves a lot of time and stress.
Jon: A developer is far more effective when presented with a well understood problem and given the opportunity to develop a solution based on their understanding of the application and its technical capabilities. When you are approached not with a problem, but rather a solution, it is important to ask questions and understand what the goal of an initiative is. The number of times my peers and I have been able to propose a simpler, faster, or less costly solution than what is original proposed is uncountable.
Josh: Even just a little bit of quick-and-dirty documentation can quickly pay for itself. It might just be a line or two of comments in a piece of code recording the reason for making a change, or a few sentences added to a readme file describing how a feature works but leaving behind a trail of breadcrumbs for yourself or others which can be followed to quickly arrive at answers can save a lot of time down the road.
Leigh: The 80/20 rule. No project will be 100% complete/perfect/accurate. If you hit above 80%, you’re doing pretty good. Relax and look at the “spirit” of the work, and the details are less important. If you attempt to work for 100% you will not only never be satisfied, but you will also cause issues with your co-workers and clients as their priorities and goals are not an exact match to your own. This is not to say not do your best work, but rather understand and be flexible. Technology can’t bend, but people can and will so get used to it.
Ben: Chances are your current “problem” has been solved already by someone else in either a direct or abstract sense. What this means is that with a little bit of searching through some of the most popular online code editor sites, you will find a tried-and-true implementation that you can mold to your exact needs.
Thanks for reading!
Please help us spread the knowledge by sharing this article with your peers, and don’t hesitate to contact us with any questions about your future as a software developer. Look out for part 2 coming soon!