Heady’s Modern Engineering Processes
As we’ve said, our commitment to process is key to our work, growth, and success. The Heady engineering department is spread across multiple global offices. For seamless work to continue across time zones—and in the case of someone being on vacation or sick—we’ve created a reliable infrastructure of collaborative tools and, most importantly, thoughtful standards and processes.
Modern engineering processes play a key role in every step of Heady’s engineering work. Here’s a look inside our differentiated approach.
How We Create Stable, Reliable Products
Development Guidelines & Standards
Many firms are loose in terms of their standards. Heady is not. To help guide engineers in approach and execution of their project work, our leadership team maintains and enforces standards and best practices across each discipline. Specific guidelines we’ve developed:
- Software Development Engineering Manual & Principles
- Code Review Best Practices
- QA Procedures & Test Plans
- Interview Procedures and Process
- Coding Style & Guidelines across Disciplines
- Support and Monitoring - Incident Response
QA as a Separate Discipline
The fact that Heady has as one of our five domain teams a dedicated QA department shows our deep commitment to getting this integral step of code development right at every stage. The close collaboration of QA specialists with other developers on their teams is how we deliver the best possible work for our clients. Within our engineering department, QA testing is done on a daily basis. This ensures that as continuous integration is happening, any bugs or issues are caught and corrected as early as possible.
Documentation & Specifications
Every client project team adheres to specific documentation and specification rules. These standards are informed by our internal guidelines and defined by the team that will be working with them using an established template. This is a dynamic process. To ensure that everyone on a project team is on the same page before coding begins, all members meet to talk through what they’ll be coding and how they want to do it. These meetings sometimes involve other stakeholders, like vendors, clients, Solutions Architects, etc. From those gatherings, the project-specific documentation and specification rules are established.
Code Reviews and Source Code Management
As they say in problem solving, two heads are better than one. When it comes to code reviews, we believe three sets of eyes is best. So every developer at Heady helps with reviewing code, and before every push, two engineers review their teammate’s work before it goes into the software repository. Because we work with customer-obsessed brands, many of which are in the Fortune 500, a critical part of our code reviews is checking for security issues. Heady engineers use modern tools like VeraCode and SonarCloud, Nessus scans on infrastructure and endpoints, and mobile app scanning with Fortify and ImmuniWeb to confirm that our code is free of vulnerabilities. For source code management, the team uses BitBucket and practices modern GitFlow methodologies.
CI/CD & DevOps Support
The Heady engineering team uses automated, continuous integration to maintain the performance and security of our clients’ products. Specifically, we have a proprietary DevOps platform that allows us to create automated branch-wise builds via Bitrise for testing. We call them Color Builds and they improve our QA time by allowing different versions of an app to live on the phone at the same time, which is not possible without this system. Where most engineering teams need to use TestFlight for new builds, our DevOps platform allows us to automatically create separate builds in AppCenter for continuous review and testing. This proprietary tech is key to reducing our overall dev time, because it allows us to push out small features on a daily basis for internal and client review, speeds up the iOS and Android QA process, and keeps our builds moving from developer to QA to PM through automated notifications.
Recently, our engineering department has elevated our focus on security and internal data management policies by working directly with a vCISO provider. During this engagement, Heady has audited and remediated issues with all systems. We have also adopted the principles established in the National Institute of Standards and Technology Cybersecurity Framework (NIST CSF). Our goal is to focus on SOC2 compliance, which defines criteria for managing customer data based on five “trust service principles”: security, availability, processing integrity, confidentiality, and privacy. As of this writing, we are well on our way to earning the SOC2 certification.
Monitoring, Logging & Support
Our clients’ products require 24/7/365 support, in case bugs or any other user issues emerge. To make sure we provide that service without requiring engineers to be on-call 24 hours a day, the Heady team has put serious effort into modernizing our monitoring, logging, and support processes. We’ve added CloudWatch and automated alerts on all system services, including logs, and route all notifications and alerts through PagerDuty. This system, which we can transfer to clients after our engagement with them ends, helps us manage our multi-regional on-call schedule, various services and levels of urgency, and notifications, so we can provide uninterrupted coverage while staying respectful of team members’ time. The fact that this responsibility is shared across offices has also created opportunities for ongoing knowledge transfer between the global teams.
How We Empower Engineers to Do Innovative Work
Research & Development
Latest Frameworks & Tech Stack
It’s our mission to help brands prepare for what’s next. Whenever possible, we leverage the newest and most effective frameworks, software, and other tools in our development work, whether we’re building from scratch or enhancing existing code. In collaboration with our clients and based on their preferences, we work to bring tech stacks up to date and reduce reliance on outdated software. We strive to use open-source frameworks and libraries as we build products (unless unique project requirements prevent it), and Heady engineers often contribute to those libraries as well.
There’s a deep internal commitment to cloud at Heady. Our team is comfortable with all the leading cloud providers: AWS, Microsoft Azure, Google Cloud Platform, and beyond. We use Amazon Web Services (AWS) internally and for most client projects, and we’re always testing advanced cloud techniques that allow us to deliver better work. To that end, we’re using Terraform and CloudFormation to explore and standardize smarter ways to build infrastructure in the cloud. Heady engineers are also getting into serverless computing with FarGate, broadcast-grade video streaming with Elemental, and innovative user management tools like Cognito.
How We Help Team Members Grow and Advance
Small Teams and Agile Methodology
The developer culture at Heady is one in which engineers wear many hats and take full ownership of deliverables. Because our project teams are lean, each member works on a greater variety of tasks and elements of a project than at most other firms, which feeds their growth and knowledge within and beyond their discipline. Heady clients also benefit from our team structure and agile methodology. Clients enjoy working with consistent, knowledgeable engineers who provide regular product demos and education about software and applications. Furthermore, this builds transparency into our client relationships. In demos, we are equally open about mistakes and delays as we are about successes.
Mentorship, Learning & Experimentation
Heady engineers tend to be self-motivated and independent. Most are doing their own research and explorations, which Heady enthusiastically supports with reimbursement for education and travel to seminars and conferences. And as our team grows and our capabilities expand, we’re building out new and better ways to facilitate knowledge transfers and mentorship. We believe in promoting from within, with a focus on engineers’ personal growth plans and enhanced support for people stepping into manager roles. Finally, one of the most impactful mentorship strategies we have is encouraging team members from different cities to visit other offices for immersive collaboration and relationship growth.
Heady’s Modern Engineering Culture
Corporate perks are nice. A culture of respect, freedom, and support is better. At Heady, we’re proud of the reputation we’ve earned as a place where things are done right from the start, and we know that our success is rooted in our modern engineering culture.
Heady engineers are empowered, not micromanaged. They get to take time off for vacation and for rest. They get access to the best tools and software, regardless of which office they work in. They work within and across teams of brilliant developers who help them grow.
It’s because of our engineers’ knowledge and contributions that Heady is growing as quickly as it is. And it’s due to our strong, modern processes that we’re able to sustain that growth.
As we look ahead, we expect that the Heady engineering department will double in size in the next few years. We’re eager to expand our infrastructure for mentorship and professional development by promoting more team members to management roles and creating new connections between our global offices. We know that with expansion will come new and better opportunities to deliver outstanding products.
The digital future is already here. It’s evolving and growing. And we at Heady intend to stay ahead of the game, bringing our clients along with us, by remaining committed to our team, to our process, and to our culture, as we too evolve and grow.