
This way you avoid the discrepancy between how production work vs how development works, which almost always causes major pains in the back of the neck, and with use of proper tools should mean no more work for the developers. I firmly believe that the way you deploy production is the same way you should deploy develop, shy of few debugging-friendly setting. I should probably digress here for a moment and explain why. This is the point, and the best opportunity, to upcycle the existing way of doing dev environment to produce a proper, production-grade product. As our Vagrant environment is now functional, it's time to break it! This is the moment to look for how things can be done better (too rigid/too lose versioning? Sloppy environment setup?) and replace them with the right way to do stuff, one that won't bite us in the backside. Following that is the first hurdle to go over - convert all the instruction/scripts into Ansible playbook(s), and only stopping when doing a clear vagrant up or vagrant reload we will have a fully working environment.

It always starts with an app, whatever it may be and reading the readmes available while Vagrant and VirtualBox is installing and updating. I will explain it on "live-example" of how the Rome got built, basing that current methodology exists only of readme.md and wishes of good luck (as it usually is )). Since I am a bit tired of yapping the same every single time, I've decided to write it up and share with the world this way, and send people to read it instead ). Often enough I have to explain my way of going about setting up a CI/CD pipeline with multiple deployment platforms. Ultimately you want the whole chain of services involved in a call to be serverless, and that's when we've started leveraging Amazon DynamoDB on these projects so they'd be fully scalable. One of these innovations was to get ourselves into Serverless : Adopting AWS Lambda was a big step forward.Īt the time, only available for Node.js (Not Ruby ) but a great way to handle cost efficiency, unpredictable traffic, sudden bursts of traffic. Search: Elasticsearch / Amazon Elasticsearch Service / AlgoliaĪs our usage grows, patterns changed, and/or our business needs evolved, my role as Engineering Manager then Director of Engineering was also to ensure my team kept on learning and innovating, while delivering on business value. Once again, here you need a managed service your cloud provider handles for you.įuture improvements / technology decisions included: Ultimately migrated to Amazon RDS for Aurora / MySQL when it got released. On the database side: Amazon RDS / MySQL initially. Storage-wise, we went with Amazon S3 and ditched any pre-existing local or network storage people used to deal with in our legacy systems.


Our various applications could now be deployed using AWS Elastic Beanstalk so we wouldn't waste any more efforts writing time-consuming Capistrano deployment scripts for instance.Ĭombined with Docker so our application would run within its own container, independently from the underlying host configuration. We've however broken up the monolith and decoupled the front-end application from the backend thanks to the use of Rails API so we'd get independently scalable micro-services from now on. The first enabler to this was to make use of the cloud and go with AWS, so we would stop re-inventing the wheel, and build around managed/scalable services.įor the SaaS product, we kept on working with Rails as this was what my team had the most knowledge in. I had inherited years and years of technical debt and I knew things had to change radically.

The company also does provide Data APIs to Enterprise customers.
METABASE ALTERNATIVES SOFTWARE
This is a SaaS software helping real estate professionals keeping up with their prospects and leads in a given neighborhood/territory, finding out (thanks to predictive analytics) who's the most likely to list/sell their home, and running cross-channel marketing automation against them: direct mail, online ads, email. Back in 2014, I was given an opportunity to re-architect SmartZip Analytics platform, and flagship product: SmartTargeting.
