Want to Be the Best Full-Stack Developer You Can Be? Start With These Tips.

From alignment to problem-solving, Scaled Agile talks about what it takes to be a success.

Written by Erik Fassnacht
Published on Aug. 31, 2021
Want to Be the Best Full-Stack Developer You Can Be? Start With These Tips.
Brand Studio Logo

Most jobs require far more than one skill.

Basketball players need to dribble, shoot, run and pass — not to mention exercise, practice, study film and eat healthy during their off hours. Painters need to know brushstrokes, color combinations, composition techniques, art history, a panorama of art styles and more. For aspiring full-stack developers, the laundry list of skills is also long — but the journey to success is as clear as good code.

We sat down with Scaled Agile VP of Software Engineering Dan O’Leary, who shared some of their tips on the skills every full-stack developer needs to succeed. We learned that alignment, curiosity, problem-solving and collaboration are big — yet it was their ideas for how to develop these skills that really opened our eyes.

 

Dan O'Leary
VP of Software Engineering • Scaled Agile, Inc.

 

Scaled Agile at a Glance

Scaled Agile, Inc., is the provider of SAFe®, a popular framework for enterprise agility. Through learning and certification, a global partner network, and a growing community of hundreds of thousands of trained professionals, Scaled Agile helps enterprises build better systems, increase employee engagement and improve business outcomes.

 

What technical skills do you consider to be the most essential for your success as a full-stack developer, and why?

In general, a wider skill set enables improved team productivity and the ability to absorb feature development with varying requirements across the tech stack. When I am looking for new developers to add to the team, I focus on those individuals who have multiple skill sets and are interested in expanding their range. 

Full-stack developers who can do it all are awesome, but there are many multi-skill set profiles that can be combined to form a powerfully productive team. Examples include: front-end developers who can design; front-end developers who are able to work on DevOps; back-end developers who can do DevOps and scalability improvements; and back-end developers who can develop front-end applications (i.e. full stack). 

Those that aspire to full-stack development have to start somewhere and so building out your skillset incrementally on a team that supports you on this journey is the key to realizing this dream while helping the team build products and features along the way.


Whats a soft skill that you also consider critical for your success? Why is this skill so important?

Within the realm of agile development, I believe the most important core value is alignment. Without alignment on what is to be built and how it will be built, the team will not be able to deliver value to customers. Alignment cuts across the entire product lifecycle including requirements, development process, architecture and design/development/deployment patterns. 

The key soft skill underpinning alignment is curiosity. The ability to ask questions for clarity and understanding enables positive conversations and productive collaboration in all areas where alignment is critical. A company culture that includes curiosity empowers all employees to seek answers, which will form the foundation of alignment within teams and across the organization. Developers applying this skill beyond their team will reap the benefits of a fuller understanding of the company vision and strategy in addition to forming relationships with individuals on other teams.

 

The key soft skill underpinning alignment is curiosity.


 

Throughout your career, what steps have you taken to strengthen these skills? And what advice do you have for developers looking to build up their full-stack repertoire?

In general, the strengthening of existing skills comes with daily development practice. However, there are dimensions that need to be factored into this practice to prevent calcification of code and preserve product safety for customers. All products are built on a tech stack, which is then deployed to infrastructure, which has its own tech stack. Keeping all of the components within your product and infrastructure up to date is critical to keeping your product functional and secure as well as keeping developers up to date on their tooling. Many development teams take an ad-hoc approach to updating their tech stack and end up getting further and further behind. To avoid this, it is critical to have a comprehensive schedule for upgrades, which is harmonized with the schedule for feature development.

In terms of skill set augmentation, the key is to find a team that supports continuous learning with the goal of widening skill sets. In addition, frequent pairing with developers who are farther up the curve for those skills you need to acquire is essential.

Hiring Now
FluentStream
Cloud • Software