About GoStudent

GoStudent is an Edtech platform disrupting the tutoring market and bridging the knowledge gaps of young students. +16M€ raised from international investors such as Leftlane Capital and DN Capital. 130 employees spread over our offices in Vienna and Lyon (and soon in Spain & UK/IE). We want to shape the future of learning as the first digital tutoring platform, truly dedicated to the idea of "students first", with products that are perfectly tailored to the fast-paced & digital lifestyle of today's primary and high school students.

Intro

I joined the GoStudent project as a remote software developer. I've got the chance to work with VueJS, deploy on K8S, experience another type of microservice architecture and another way of communication between services. Unfortunately, when I joined the company, it wasn't the best timing for me, as I was experiencing issues from personal and professional matter, which resulted in a deprecated performance from my side, and I decided to leave.

Tech Stack

JavaScript, Node.JS, Vue.JS, NATS, Couchbase NoSQL

Team(s)

I've got the chance to work again with some of my previous teammates from "Hostway". We were 4 "fullstack" developers (from "Hostway"), 1 frontend developer, UX/UI designer. Everyone was more or less individually working on various aspects of the GoStudent platform.

System architecture

Being a new service, GoStudent was running on a platform, consisting of many true microservices. There was a database API layer service, serving as a gateway to the database, where each other service was registered with corresponding endpoint-query mapping. There was also an API gateway service, dividing public and internal services. The communication between services was done through the NATS.IO messaging system. In order to avoid bandwith, the requests were compressed using MessagePack.

Release Process

The release cycle was easy as ABC: each service was deployed independently using CI/CD best practices on a K8S cluster.