In order to provide a great browsing experience, we use strictly necessary cookies. They are essential for you to browse the website and use its features.

The Technology

Constantly evolving technology now allows us to build beautiful and powerful software which transcends the limitations of traditional single-page applications.

Serverless Computing

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.

TECH STACK

Adopting TypeScript as well has boosted our productivity, efficiency, and adaptability even further. We can build large scale server-optimized JavaScript applications with Ember.js, React (Next.js), Vue, over scalable REST APIs or real time GraphQL APIs, on top of serverless infrastructure. All that in addition to a collection of languages, tools, and standards ensures an agile, robust, scalable, and performant solution that people will truly enjoy.

VERSION CONTROL

Git (GitHub or Bitbucket)

FRONT END

Language Typescript

Framework Ember.js, React, Next.js, Vue.js

BACKEND

Language Typescript

Runtime environment Node.js

Database PostgreSQL, DynamoDB (noSQL), Amazon Aurora, Microsoft SQL Server

Serverless cloud infrastructure using AWS

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

CI/CD

CircleCI or Bitbucket, SonarCloud, Percy

ipaas/data integration

Mulesoft

USER EXPERIENCE

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.

code & Engineers

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!

Our Workflow

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:

/ Automated Testing

< committed as part of the code >

< written by the code author >

/ Static Code Analysis

< includes both linting and automated reviews of quality and security >

< done by bots and a web service (e.g. SonarCloud) >

/ Visual Regression Testing

< done by a web service (e.g. Percy) >

/ Code Review

< done by another experienced engineer >

/ Continuous Integration

< done by a web service (e.g. CircleCI) >

/ Internal Manual Testing

< done by our team (e.g. via BrowserStack) >

/ Product Owner Review

< done by the product's QA team >