Startups Using Backbone.js in Boston
Via their job posts and information submitted by startups themselves, these are the Boston Backbone.js startups we've found.
Interested in other technologies? Browse or search all of the built-in-boston tech stacks we've curated.
Affordable high-resolution 3D printers.
Tech Stack Highlights
C++ – The majority of our codebase (Desktop & Embedded) is written in C++. This allows us to share code across platforms, and to be able to carefully control sensitive areas of code (performance and memory-wise).
Qt / QML – We use the Qt libraries throughout our code. This allows us to extend C++ with nice features for integrating various logic areas (signals / slots), as well as a tight integration with QML, which we use for our user interface code. QML is a great way to track state transitions, both on our embedded & desktop applications. Qt also makes cross-platform code easier to develop & maintain.
Yocto – Our printer runs a custom Linux distribution, which we build using the Yocto project. This system allows us to track our firmware builds & releases in a deterministic way.
Git – All of our source code is tracked in git, which provides all of our version control needs. It works nicely with Yocto to be able to exactly specify versions of firmware builds at the package level. It also allows for good collaboration between developers while preserving the cleanliness of shipping source code.
Integration of scheduling & booking into a single API / marketplace, allowing platforms to integrate local business transaction capabilities without direct relationships.
Tech Stack Highlights
Python – We’re using python for our core app, with Django/DRF powering our REST API, NLTK for NLP, and pandas running high-performance real time data analysis to calculate things like RateRank and savings estimates. We use Vagrant and Ansible for IT automation, and Jenkins and Selenium for QA automation and deployment to our AWS environment.
MariaDB – Our database runs Maria on RDS, for optimal MySQL-syntax performance. We crunch a lot of data in each query, so performance is key. Some of our queries approach 100 lines long, with multiple nested queries, dozens of joins, and layered aggregation, and we run some queries thousands of times per day.
Backbone – Backbone provided us “just enough” structure for our highly custom front-end MVC, while allowing us to build our own proprietary routing & workflow engine around it. We’re using epoxy for 2-way data-binding, and jQuery + Bootstrap plugins, in addition to dozens of proprietary UI components.
Bootstrap – Our mobile-first-responsive CSS uses Bootstrap as a baseline, but builds upon it to form a highly-customized, well-organized extensible style-guide with our own unique components and layouts. We’re using SASS class-extension, selector-nesting, and custom mixins under the hood to generate our CSS.
Tech Stack Highlights
MySQL – We use MySQL for a principal data store, mainly because we inherited that from the MVP, but we don’t have many complaints about it. We’re starting to use ElasticSearch as a data warehouse for OLAP and to optimize heavy queries. It’s REST-first design works nicely for us, and the speed is unbeatable.
Play Framework – We use Play / Scala for the heart of our platform: the API. We don’t serve any pages out of play, but it works nicely to provide a REST API. Scala takes a bit of learning, but it provides OO hooks to ease you into functional programming.
Backbone.js – Most of our web app is based on Backbone, for better or worse. It was the right decision four years ago when we started using it, and holds up fairly well. It’s stable, but being so event driven can make it hard to reason about.
React.js – Newer parts of our app are being built in React, which we’re very optimistic about. We’re hoping to take advantage of code re-use by repackaging with React Native for mobile app use.
Amazon Web Services – We run everything on AWS, which makes life easy, if sometimes expensive. We’re trying to avoid vendor lock-in by steering clear of their branded products as much as makes sense, and instead using plain old computer resources. Jenkins runs our continuous integration, which is a hugely important part of our process. As an agile shop we want to de-dramatize releases; CI makes this process so easy that it’s possible to release without worrying.