The solution
Pentalog quickly identified the right resources to effectively meet both functional (high technical skillsets) and operational (short response time) requirements for this innovative project.
Since December 2013, Socrative has trusted a Pentalog team, initially comprised of two engineers, to develop the new version of its e-learning platform (b.socrative.com), a cloud-based student response system developed in Django Python.
Socrative provided this e-learning tool via the web and native iOS and Android mobile apps, allowing teachers to create and distribute quizzes and conduct polls in class.
We started with one backend developer and one junior frontend developer located in our Pentalog office in Bucharest, Romania. A U.S.-based Socrative engineer coordinated, acting as Scrum Master and participating in code reviews and software development.
The following year, the team grew with another senior frontend developer and maintained this size for another two years. Then, we scaled back to two people: one senior backend developer and one senior frontend developer.
The team used Agile methodology (Scrum) with short delivery cycles (1-week sprints) to enable our client to quickly implement and deploy new platform features. Our daily meetings started at 5:30 pm Romanian time (10:30 am EDT), where we discussed what we accomplished, our future goals, and if there were any blocking points. After a few months, we shifted the working schedule to align more with the U.S. time zone (so, we started the work around 1 pm, Romanian time thus 6:00 am, EDT).
As backend technologies, we first used Django 1.6, and then switched to 1.11 towards the end of the collaboration. We also used AWS RDS (Postgres) and Redis to cache http responses.
On the frontend side, we switched to React with Backbone routes and models. Towards the end of our collaboration, we migrated part of the backend services to NodeJS since all of our team members utilize JavaScript.
For real-time messaging, the team used a commercial solution (pubnub.com).
The Socrative CEO acted as Product Owner, planning activities for each sprint. He was like the glue that held the team together, building a friendly working environment where we could discuss new ideas and have fun together, although remotely. One time, we even had the chance to meet in person when the entire Pentalog team was invited to Salt Lake City, Utah in the U.S.
Pentalog optimized and stabilized the Socrative e-learning platform in about one year. During each sprint, we optimized the application and made it more stable and more efficient. We also migrated some data from Socrative 1.0 (MySQL) to PostgreSQL.