Yep…. testing comes first :) We are firm believers in test automation for everything we do, be it clients, servers or even simple scripts. Good tests shorten debug cycles, increase developer productivity and increase product stability. Good tests are motherhood and apple pie. Good tests are Zen. Did we mention we like writing tests?
From websites to webapps, from mobile to desktop, HTML5 has become the de-facto presentation layer of the world and HTML5 is our specialty. If you can draw it in your mind, we can draw it on a browser
We've been doing large-scale AngularJS apps since 2012 and have been advocating AngularJS ever since. As AngularJS pioneers we've become very proficient in building complex user interfaces with it and use this framework in almost all of our projects
Hybrid Mobile (Cordova/PhoneGap)
We've been strong advocates of the Hybrid Mobile approach in which most of the mobile UI is developed with HTML5 techniques and native APIs are used only where needed. While not all mobile projects fit the bill, the ones that do reap great benefit from aligning code and feature set across mobile platforms realizing cost savings and faster time to market. When the shoe fits, we will always recommend the Hybrid Mobile approach
React/Redux is an entirely new way of building user interfaces. With tighter state management and a more functional programming style, React/Redux allows creating high quality interfaces with more predictable behavior and a higher performance profile. We've been particularly excited with React-Native which allows creating entirely native mobile interfaces with maximum amount of code reuse between platforms. We've been doing React/Redux and React-Native projects for a few months now and are loving every minute of it.
Ruby on Rails
We use Ruby as the primary back-end for most of our projects. Ruby is a highly versatile and productive language, able to run on all operating systems and on the Java Virtual Machine. Complex business logic, automation scripts, database interfaces, REST APIs and of course tests are all easy and fast to develop using Ruby
When you need something extremely scalable, our secret-sauce is Erlang/Elixir. Based on a 30 year track record in the Telecom industry, there's no match to the distribution capabilities of Erlang. The modern nature of the Elixir language coupled with the battle-tested Erlang base gives you a fast and ultra scalable solution at typically a fraction of the time. IoT applications and very large back-ends are a natural fit
Developing both client code and a server code with the same language reduces a lot of complexity from a software project. We offer NodeJS back-ends based on the Express framework in places where Ruby on Rails is not an ideal pick
Amazon Web Services
We deploy most of our solutions on the Amazon cloud service, the most popular and feature rich cloud platform with a plethora of advanced services and automation tools. We complement the AWS suite with our own set of continuous integration and deliver tools to provide a seamless DevOps experience on top of AWS. AWS coupled with our DevOps tools offer a very cost-efficient and scalable way to host your solution
Digital Ocean / RackSpace
We can also complement cloud solutions with other vendors to optimize cost and availability of apps
If you're just getting started, there's no match to Heroku's Platform-as-a-Service offering. It's the quickest way to get up and running with a scalable cloud solution that includes monitoring, logging and DevOps, all in one
Our SQL server of choice is PostgreSQL. This is an established SQL server with a very high performance profile and a rich set of features. Best of all, it's completely free for both cloud and on-premise deployments
When you have mass amounts of mission-critical data that you need to spread across several machines without a single point of failure, we typically recommend Apache Cassandra. With some of the largest database deployments in the world Cassandra has successfully demonstrated storing many PB of data over tens of thousands of machines with no performance degradation… there's very little chance of hitting walls with Cassandra.
When you need to search vast amounts of structured or unstructured data to get immediate insights, ElasticSearch is a distributed and fast index on top of almost any data store
MySQL / SQLServer / Oracle
We write most of our relational database access code using standard SQL-92 features which means that most of our code runs unaltered on a variety of compliant SQL databases without change