Constantly evolving technology now allows us to build beautiful and powerful software which transcends the limitations of traditional single-page applications.
One of the latest trends that we have adopted is serverless computing, which allows us to delegate infrastructure management while only paying for the resources that we actually use. With this reduced overhead, we can now focus even more on the core product we’re building while automating provisioning, scaling, and maintenance of the underlying infrastructure.
Git (GitHub or Bitbucket)
Framework Ember.js, React, Vue.js
Runtime environment Node.js
Database PostgreSQL, DynamoDB (noSQL), Amazon Aurora, Microsoft SQL Server
Services AWS Lambda, Amazon CloudFront, Amazon API Gateway, AWS AppSync, AWS step functions, AWS Amplify
Infrastructure as code service AWS CloudFormation
Infrastructure as code frameworks AWS Cloud Development Kit, Serverless Application Model
CircleCI or Bitbucket, SonarCloud, Percy
We couple our new tech stack with multi-breakpoint pages, as well as optimizations for touch, retina displays, responsive images, and mobile animations. This gives us a product that provides the comfort and user experience of native applications, all the while enjoying all the benefits, scalability, and pervasiveness of the web.
Not only will your users and customers enjoy the end result, but so will your in-house product team. We take great pride in the details of how we write code: in addition to aesthetics which make the code beautiful to work with, we give special attention to the scalability and maintainability of the code. We invest an extra amount of time just to make sure that any developer that takes over can be onboarded in a flash!
When building a large application while also aiming to meet a deadline (and business goals), it is easy for developers to place tangible results ahead of quality. As time goes by and the application grows, Technical Debt accumulates, and soon enough the application becomes at best fragile, and at worst broken and unmaintainable.
Our current development workflow was gradually created over the years through research as well as trial and error from our experience working with engineers from different backgrounds, companies, startups, and popular open source projects and communities. We are constantly changing and improving it to keep up with the modern trends of web application development.
The aim of our workflow is to ensure the code meets high quality standards without disrupting the speed of shipping or developer happiness. Most of our focus is on preventing low quality and buggy code from ever reaching the code base. In summary, we ensure quality by ensuring every story goes through a rigorous process similar to this one:
< committed as part of the code >
< written by the code author >
< includes both linting and automated reviews of quality and security >
< done by bots and a web service (e.g. SonarCloud) >
< done by a web service (e.g. Percy) >
< done by another experienced engineer >
< done by a web service (e.g. CircleCI) >
< done by our team (e.g. via BrowserStack) >
< done by the product's QA team >