Overview
The article discusses how SafetyCulture's engineering team has evolved from a small startup to a significant player in the tech industry, focusing on their transition to a SaaS model, the development of innovative products like iAuditor, and the adoption of modern technologies such as machine learning and microservices. It highlights the company's culture of autonomy, rapid growth, and commitment to quality in software engineering.
What You'll Learn
How to migrate a monolithic application to microservices using Node.js and Golang
Why adopting a 'you build it, you run it' model enhances team accountability
How to implement a shared C++ codebase for mobile applications
When to transition from REST to gRPC for better performance
Prerequisites & Requirements
- Understanding of microservices architecture
- Familiarity with AWS services(optional)
- Experience with Node.js and Golang
Key Questions Answered
How did SafetyCulture transition from a document business to a tech company?
What technologies does SafetyCulture use for its engineering projects?
What challenges did SafetyCulture face during its rapid growth?
How does SafetyCulture foster innovation within its engineering team?
Key Statistics & Figures
Technologies & Tools
Some links below are affiliate links. We may earn a commission if you make a purchase.
Key Actionable Insights
1Implement a 'you build it, you run it' model to enhance team accountability and ownership over code.This approach encourages engineers to take responsibility for their work, leading to higher quality code and reduced downtime. It fosters a culture of collaboration and continuous improvement.
2Utilize hackathons and innovation events to stimulate creativity and rapid prototyping within your team.These events can lead to the development of new features and solutions that may not emerge in a traditional work environment, driving engagement and innovation.
3Consider migrating to a microservices architecture to improve scalability and flexibility in your applications.Adopting microservices allows teams to work independently on different components, facilitating faster development cycles and easier maintenance.