CodeCoach by First Code Academy


Online coding classes for kids

A story behind

The CodeCoach project is a creation of First Code Academy, a Hong Kong based education startup built with the mission to instigate digital literacy to the young generation and impart coding skills to more children.

Since its foundation in 2013, First Code Academy provided coding classes to over 10,000 students across Hong Kong, Singapore, and Taiwan. For their educational initiatives, First Code partnered with multinational corporations like Google and their work has been featured on Forbes, Wall Street Journal and other big media outlets.

The CEO and co-founder of First Code Academy, Michelle Sun has achieved a number of international accolades for her exceptional work, including the Forbes 30 under 30 in Asia (2016) and the BBC 30 Under 30 Women Entrepreneurs (2015). For developing CodeCoach, Michelle hired Anadea and we were excited to set to work.

What is CodeCoach?

CodeCoach is an e-learning platform that offers personal coding lessons for kids. It connects students across the world with certified computer science tutors and lets children learn to program anytime and anywhere.

The system includes several modules:

  1. Virtual classroom with:

    • Shared code editor for Python which allows Tutor and Student to write code simultaneously;
    • Communication module - online video conference and chat, screen sharing;
    • Python code executor with the results being shown on the same screen.
  2. Admin dashboard for managing classrooms, students, and tutors.

CodeCoach allows tutors to provide one-on-one online coding classes to students from all over the world, thereby giving more kids a chance to acquire their first skills in programming.

CodeCoach Website

The development

CodeCoach: online coding classes

Michelle came to Anadea with the idea of the CodeCoach platform and the task was to develop the system from the ground up. Our business analyst Volodymyr Halaiko took a deep dive into the project details, helped define the initial requirements and created the scope of work document.

It was decided to use the agile approach in the project. This turned out to be a great decision since with project moving forward it became obvious that some features were to be done differently, some were to be added, and some were to be pushed to the second phase. To demonstrate the progress and gather the feedback, the team did weekly demos.

Michelle eagerly participated across all stages from the business analysis to the project release. This collaboration along with a fine-tuned teamwork allowed us to quickly address pitfalls, flexibly balance priorities and bring up the project to the completion at the maximum speed.

Key technical challenges

One of the challenges we faced and solved in this project was to enable screen sharing in different browsers including those that are more popular in the Hong Kong region, such as QQ browser and 360 browser. A problem here is that each browser has different requirements to implement the screen sharing feature. For example, all chromium based systems require special plugin developed and installed to allow sharing the screen from within the browser.

Another challenge was executing the code in a separate Docker container which was supposed to be managed from the front end using web-sockets. This task was crucial for the application stability and security.

Team & Technologies

Development team:

  • back-end development: Alexander Kazancev, Dmitriy Stepanenko;
  • front-end development: Stanislav Duskin;
  • server configuration: Andrey Bulava;
  • UX / UI: Olena Syvokobylskaia;
  • quality assurance: Darina Chizhova;
  • project management & business analysis: Volodymyr Halaiko.

Technology stack:

  • RoR;
  • Node JS;
  • React JS;
  • Socket io;
  • WebRTC;
  • Firebase;
  • Docker.

Bottom line

The project has been delivered within allocated time and budget due to the team technical efficiency along with proactive participation of the First Code Academy team.

Here an extract from Michelle's feedback on

"I'm impressed by Anadea's speed and flexibility in adjusting to our requirements. Anadea allocated a full-fledged team of software engineers to rapidly build and launch the final product. Within just six months, the team had delivered the requested platform. Efficient project management including regularly scheduled calls ensured a smooth workflow."

If you'd like to know more about this project, contact us.