This post was written by Tristan Fisher, Senior DevOps Engineer at SinglePlatform
SinglePlatform is an information management platform that syndicates
updates to search engines and other content-aggregating sites. In big-O
notation, we seek to turn an O(n) process into an O(1) process for local
and national businesses. In practical terms, our goal is to reduce the
amount of effort needed to keep a business’s online presence current.
We’re chiefly a web development shop that’s driven by Python and
user interactions. For our programmatic consumers, we have a collection
of APIs and services that are written in Python, Go, NodeJS, and PHP, but
we’re standardizing on using the Flask microframework for Python.
Similarly, we think our future is in PostgreSQL, but various NoSQL and
MySQL databases are currently working hard for us.
We run all of our servers in AWS, where we use Ansible and Python to
drive our systems automation. To keep our operations toolkit small and
user-friendly, we’ve extended Ansible and make use of APIs that help us
orchestrate server provisioning, alerting on metrics, and more.
I’m half of the Systems/DevOps team at SinglePlatform and story of the
past half-year has been “scalability and stability.” We’ve taken an
infrastructure that was built piecemeal over the course of years and
re-deployed critical components of it in a programmatic fashion with
minimal downtime. To make future improvements attainable, we’ve
implemented software-defined networking in private networks on AWS,
reduced our number of hard-to-maintain legacy parts, and have written
system tools that integrate into our existing toolkit. This is all to say
that we’ve increased the resiliency and performance of our systems stack
without sacrificing code quality.
Meanwhile, on the customer-facing side of the business, we’ve been
working on growing our business by adding features and extending our core
platform to support new partnerships. We’ve made a version of our site
that’s responsive to be more mobile-friendly, rewritten one of our core
APIs from NodeJS to Python, and grown closer as a team as we add a myriad
of fixes to our products through pull requests on GitHub. The biggest
challenge for us has been time poverty, but we’ve been focusing on our
core competences and paying off our technical debt so we can be more
creative in the future.
Our near-term goals are auto-scaling infrastructures, programmatic
communication of system statuses in terms appropriate for our
non-technical departments, further homogenization of our API stack, and
adding talented men and women to our engineering team.
Get your resume in front of top startups in 60 seconds →