By Jason Held on 9/20/18 10:45 AM
Here at Circulation, our engineering team is committed to making regular improvements to our platform that help enable better patient care. To support our mission, we have a frontend development team that is responsible for the look and feel of our platform and making sure the user experience is optimal. Working with the Frontend Team, we have our backend developers, a team of people responsible for ensuring that the actions our users take within the platform perform the intended operations correctly (think dispatching a ride or messaging patients). This is essentially the “cloud” part of the software, and we spend a lot of our time thinking about how to make these backend processes faster and more efficient.
Over the past year, our Backend Engineering team has undergone a large technical evolution — right down to the coding language itself. In 2017 we embarked on an ambitious project to update our coding language, Python, from version 2 to version 3 — not a small endeavor by any measure.
For background, Python version 2 (Py2) was so beloved by the development community (including businesses) that when Py3 came out several years ago, its adoption was slow at best. We won't go into the details here, but it took many iterations upon Py3 (Py2 receiving minimal updates) before it really started to take hold.
Circulation started on Py2. There was no technical reason for it -- it was simply the most commonly used version. Py2 will stop receiving updates (including security) in January 2020, but we decided it was best to complete the upgrade early; the process of pushing those upgrades to the platform took the better part of a year.
So, why did we do this? Or perhaps the better question is how will our users and our riders benefit from this change? Most importantly, our entire platform received immediate performance and efficiency gains. With the upgrades to Py3, we can dispatch rides faster, serve content to the web browser faster, and we can develop our code with cleaner architecture more easily. Our users and our patients can be happy about that!
And for hiring? Well it only looks good from here. We are looking toward the future of enhancing our platform on Python 3 and we’re looking for talented engineers who want to take on the challenge with us. Take a look at our engineering job postings here if you’d like to apply.
Would you like to hear more of the details around the transition? Feel free to email me or you can wait for the more technical version of this article which we’ll be serving up in the near future.
Jason is Director of Backend Engineering here at Circulation