The Challenges and Rewards of Being a Full-Stack Engineer

In addition to building out back-end functionality and API code that sits in the middle, these professionals are able to work on front-end features and applications.

Written by Janey Zitomer
Published on Dec. 22, 2020
Brand Studio Logo
Expedia Group
Expedia Group

Being a full-stack developer means having increased flexibility and agency to work on a wide range of projects.  

Or at least, that’s the case for engineers at the following Austin tech companies. In addition to building out back-end functionality and API code that sits in the middle, these professionals are able to work on front-end features and applications. As a result, they understand how disparate puzzle pieces fit together and interact, and they can tackle high-impact projects that tap into their creative sides — as well as their analytical, problem-solving strengths. 

Such projects include Imprivata’s new hierarchical permissions model for enterprise companies. As Software Architect David Greene works on the new design, he said he has to be aware of minimizing risk associated with making sweeping changes to existing code — an obstacle that comes with the territory. 

But to Greene and his peers, such challenges are half the fun. 

“Suffice to say that solving hard problems is the reward in and of itself,” Greene said. 

 

Image of Anh Ho
Anh Ho
Software Engineer • Bright Health

Working to streamline a search tool — for healthcare providers or any profession — is no simple task. At Bright Health, developers take time to consider the ramp-up associated with learning a new function and keep varying user expectations in mind. Anh Ho, a software engineer, said full-stack developers have the flexibility to contribute where necessary with the ultimate goal of creating the best product possible. 

 

Describe a project you’re working on right now, and why you find it challenging or rewarding.

Over the course of the year, my team and I have been building a provider search tool that holistically balances ease-of-use and feature richness so the user can easily find what they are looking for. The search is used to discover providers, practices and facilities that are available to Bright Health members. This sounds simple but is actually quite challenging. Search is inherently difficult. Users have varying expectations and query differently. 

I started my career in the financial and oil/gas sectors before landing in healthcare. Since then, I’ve learned a lot about its intricacies. A recurring sentiment is that finding care can often be a frustrating and stressful endeavor. It’s fulfilling knowing that I’m contributing to projects that genuinely help people.

Being full stack enables engineers to have the flexibility and agency to work on any feature that arises.’’

 

What role does a full-stack developer typically play at your company? 

On my team, being full stack enables engineers to have the flexibility and agency to work on any feature that arises. That flexibility allows us to contribute where needed, regardless of where in the tech stack the work is, so we can build the best product possible.

Our “featured services” search result is a prime example of leveraging an engineer’s ability to work full stack. This feature required updates to the database to store services information, creating a C# API endpoint for retrieval. Being full stack, one developer was able to build the entire feature on the front end without being blocked waiting for another developer or team to complete work around a specific part of the stack.

 

Image of Evan King
Evan King
Senior Full-Stack Developer • SourceDay

While managers at SourceDay understand that not every team member can be an expert on each aspect of the constantly evolving tech landscape, Senior Full-Stack Developer Evan King says that the projects his team works on require a deep understanding of certain technologies. The team also relies on cross-functional collaboration and an in-depth knowledge of their payments platform.  
 

Describe a project you’re working on right now, and why you find it challenging or rewarding.

As a full-stack developer, I’ve most recently worked on SourceDay’s accounts payable automation product, which allows customers to manage supplier invoices from receipt to payment. It automatically identifies mismatches from the invoice compared to the original purchase order, including item quantity, receipts and price. Historically, such mismatches have been an industry challenge as we are pulling data from hundreds — sometimes thousands — of external sources and no two suppliers format their invoices the same way. 

We are working to build back-end functionality that translates these PDFs from various formats into a normalized data set that can then be matched with purchase order data. This makes it easy for end-users to find and reconcile mismatches while automatically processing the matches for payment.

We’ve cultivated a culture of continuous learning and information-sharing.’’

 

What role does a full-stack developer typically play at your company?

At SourceDay, everyone on the engineering team contributes to the application in development, whether that’s architecting new features or troubleshooting back-end bugs. The projects we work on require a deep understanding of different technologies, and with the fast-paced nature of this industry, SourceDay recognizes that not everyone will have expertise in every aspect. Instead, we’ve cultivated a culture of continuous learning and information-sharing. While someone on the team might have more experience on one technology or another, we learn from each other and encourage cross-departmental mentorship.  

We also work closely with the product teams to ensure collaboration between feature rollouts and functionality on the engineering side. We work together to provide our customers with the best user experience, supported by a strong platform architecture.

 

Image of David Greene
David Greene
Software Architect • Imprivata

At Imprivata, leadership considers all developers to be full stack, as they touch a wide range of existing code. For example, a recent initiative that focused on reliability for unstable internet connections required the development team to add specific checksum tests to the company’s various download components. Software Architect David Greene said the updates took place across both ends of Imprivata’s connectivity software, which utilized their web API.

 

Describe a project you’re working on right now, and why you find it challenging or rewarding.

The core authorization model that Imprivata uses has been around for a long time, and it works well. Over the past few years, some of our larger customers have needed a more fine-grained permission model. This has led to a new feature we’re just now rolling out called Hierarchical Permissions. The core premise is that a department hierarchy exists independent of application data. Certain entities are then assigned a specific department in the hierarchy. The hierarchical permissions include VIEW_USER and EDIT_GATEKEEPER, which are linked to departments that are attached to broader locations. Consequently, a user might be able to view U.S., Canadian and French users, but only edit those in the U.S. department.

Our core challenge is designing this new hierarchical model so that we can deliver what the customer needs while minimizing risk to across-the-board changes to existing code. Suffice to say that solving hard problems is the reward in and of itself.

Suffice to say that solving hard problems is the reward in and of itself.’’

 

What role does a full stack developer typically play at your company?

Imprivata’s application is extremely complex and combines the use of traditional support clients (like Remote Desktop or SSH) with our own custom connectivity software. In turn, that software employs a customized and hardened Linux OS to serve an enterprise application, which uses a traditional Java web application server, which audits data. This data is then forwarded to yet more customized connectivity software.  Some might see full stack and think that means database, Java, JavaScript and HTML. But at Imprivata, it’s so much more.

 

Image of Siobhan Burch
Siobhan Burch
Senior Software Engineer and U.S. Tech Lead • Expedia Group

In addition to identifying missing components of existing features, full-stack developers at Expedia Group have the added responsibility of making sure the front-end and back-end developers’ designs are aligned. Senior Software Engineer and U.S. Tech Lead Siobhan Burch works on the travel company’s Experimentation Platform, meaning she researches and implements experimental methodologies like A/B tests across the business. 

 

Describe a project you’re working on right now, and why you find it challenging or rewarding.

Earlier this year, my team merged with two other brand teams. The merger has given us the opportunity to simplify our apps, tools and libraries for all departments across Expedia Group. We’ve all had to learn more about the current brand implementations, and align with analytics and product team members. As we’ve started to realize smaller deliverables, it’s exciting to see how the complete vision is coming together. It makes me want to keep pushing to get to the next goal.

A full-stack developer needs to deeply understand how the front end works with the back-end services and databases.’’ 

 

What role does a full stack developer typically play at your company? 

A full-stack developer needs to deeply understand how the front end works with the back-end services and databases. We have the added responsibility of making sure the front-end and back-end developers’ designs are aligned and feasible. We then must identify what might be missing to accomplish the story/feature. 

For example, we recently developed a management tool for product teams to maintain their experiments. This tool is built in React and connects to our service layer, written in Java, which contains validations and the database access. When product team members ask us to implement a feature in the UI, a full-stack developer on our team needs to know what would be possible with data that is currently available from the service, as well as what is needed to complete the feature. 

Responses have been edited for length and clarity. Images via listed companies.