The Technology

Single Page Apps

The potential offered by the web today allows the creation of beautiful and powerful software. Being completely web-based, single-page apps provide the comfort of using smooth native applications while enjoying all the benefits, flexibility, scalability, and pervasiveness of the web! Although responsive web design has been the norm for a while now, it’s still worth mentioning that we always consider multi-breakpoint pages. We also give special attention to optimizations for touch, retina displays, responsive images, and mobile animations.

Our Toolbox

We meticulously build our JavaScript frontend using modern standards and techniques that best fit the project. We are constantly adding and updating our toolbox; such as Ember.js, TypeScript, Babel, ESLint, Node.js, BEM, SCSS. We choose tools that help and motivate developers to build beautiful, responsive, accessible, performant, and pleasant to use frontends. When needed, we complement our JavaScript apps with reliable and performant APIs using a collection of languages and tools such as Ruby, PostgreSQL, Redis, ElasticSearch. We use scalable infrastructure like CloudFront, EC2, S3, Route 53 on Amazon Web Services and Heroku.
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!

Open Source

We believe in the power of people coming together and contributing to projects that revolutionize the way we work. Simply put, we love open source and can’t imagine doing any work without being part of the open source community. We prefer open source tools wherever feasible, and we love to contribute back to these projects when possible.

Our Workflow Quality & Speed

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. The development workflow that we use today is the result of years of research and experience; it is also constantly a work in progress. 
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 the following rigorous reviews: 

/ Automated Testing

< committed as part of the code >

< written by the code author >

/ Visual Regression Testing

< done by a web service (percy.io) >

/ Static Code Analysis

< includes both Linting and automated reviews >

< done by bots and a web service (Code Climate) >

/ At least two Code Reviews

< done by other developers >

/ Continuous Integration

< done by a web service (CircleCI) >

/ Internal Manual Testing

< done by the development and/or design team via BrowserStack >

/ Product Owner Review

< done by the product's QA team >