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.