Software Engineering at Better Health
How We Work
The software engineering team at Better Health supports projects across the company ranging from home-baked solutions to working on integrations with 3rd party SaaS platforms.
Here are the tools we use daily across our teams.
- linear for project management
- slack for communication, daily standup, and system monitoring
- github for submitting pull requests and release management
All software engineers, regardless of level, manage projects from end-to-end across the company. That means each developer creates, manages and prioritizes issues in linear, communicate progress in slack to other teams, and follows up on all technical and non-technical issues. While your team will always be there to answer questions, software engineers are product owners. We do non-technical research, collaborate cross-functionally but also spend lots of time writing code and designing both small and large systems.
Security
Information security is one of the top priorities, not only our team but at Better Health as a company. Much of our systems and data is regulated by HIPAA and common security practices. We maintain a strong culture of vigilance, risk minimization and implementing the latest industry standards and security practices across our systems and teams.
Front End
Our front end stack is a single page react application written in typescript. State management is handled in redux. We use sass, but most of our styles are written in plain css. We deploy releases to cloudfront directly from github's release management. We use cognito for authentication.
Back End
Our backend is an API written in typescript running on nestjs. Our endpoints are REST over HTTP. The API is secured by accepting verifying signed JSON web tokens. The API interacts with postgresql and also makes requests to other 3rd party APIs. Deployments are handled in github and CloudFormation. Because both the backend and frontend are written in typescript, we share common code between the two projects to reduce duplication.
Cloud Infrastructure
All of our in-house infrastructure runs on AWS and we extensively use CloudFormation to deploy and update AWS resources. We use CloudWatch for monitoring, alerts and logging. We also use sentry for automatic error detection across our applications.
Data Science
Our analytics stack uses airbyte to extract data from various sources including AWS and 3rd party APIs. We maintain custom airbyte connectors written in python. dbt will transform this data so that's ready for querying via SQL. For data visualization we use redash.
Our Interview Process
Check out how we interview for technical roles at Better Health here.