Edurino

Digital Learning for Kids

About

Edurino combines a digital learning app with haptic figurines and an ergonomic pen and helps children aged 4-8+ learn essential 21st-century skills through playful and engaging minigames co-designed with education experts. Each figurine unlocks a distinct learning world—for example, exploring shapes and numbers with the raccoon Robin or discovering plants and wildlife with the polar bear Asa.

Project Details

Period
My Role
Company
Company Language
Platform
Game Engine
IDE
Programming Language
Version Control System

08/2023 – 
Unity Developer
Edurino GmbH
English
iOS and Android
Unity 3D (2022.3.24f1)
JetBrains Rider (2024.3.3)
C#
GitLab

Period:  08/2023 –
My Role:  Unity Developer
Company:  Edurino GmbH
Company Language:  English
Platform:  iOS and Android
Game Engine:  Unity 3D (2022.3.24f1)
IDE:  JetBrains Rider (2024.3.3)
Programming Language:  C#
Version Control System:  GitLab

Description

I joined the Munich-based EdTech company Edurino, founded in 2021 during the Corona pandemic, as a Unity Developer amidst its rapid growth phase.
 

Initially, I focused on implementing minigames but later transitioned to the internal ‚App Care‘ team, where I worked on enhancing app stability, maintaining the codebase through bug fixes and unit tests, and developing custom Unity Editor tools to boost productivity for Devs and Technical Artists. Always striving to make the world a little better, I created internal best practice guidelines (e.g. coding conventions) and detailed tool documentation, which I presented to the team to ensure alignment on standards and workflows. More insights into my responsibilitites below! :)

What I did

Minigame Development

At the beginning, I focused on implementing minigames based on detailed Game Design Documents (GDDs). Starting from prepared Unity scenes where Technical Artists had already integrated the necessary 2D assets, I developed the games from scratch and ensured their delivery within set deadlines.

This involved programming game mechanics, implementing tutorial and help steps, and incorporating voiceovers and animations, followed by thorough manual testing to ensure all features were correctly implemented and functioning as intended. It was especially important to me to always keep the user in mind and strive to create an intuitive experience.

Interact with different kind of blockers to restore the river’s flow.

Fish out words from the underwater maze that contain a specific letter.

Codebase Maintenance & Optimization

After a few months, I transitioned to the internal ‚App Care‘ team, where my responsibilities shifted to enhancing app stability and maintaining the codebase through bug fixesrefactoring, and unit testing.

To make it easier for the team to integrate new internal code packages and maintain consistency across the project, I created a template repository on GitLab. This template was designed for Unity packages in our internal registry, allowing them to be installed via Unity’s Package Manager.

Unity Editor Tools Implementation

As part of the ‚App Care‘ team, I also developed custom Unity Editor tools, such as a toolbar with utilities like a time slider that allowed Devs, Technical Artists, and QA to quickly test minigames. Additionally, I created advanced custom inspectors and editor windows for inspecting and editing specific data.

I particularly enjoyed implementing these tools using Unity’s ‚UI Toolkit‘, as its web-inspired design was already familiar to me, enabling me to create visually appealing tools with XML and CSS. For example, a tabbed window for maintaining specific Unity preferences:

With regular updates, I integrated newly added tools into our main project by releasing new package versions and kept the team informed by preparing Slack posts with release notes like this one:

Every week on our internal ‚Toolkit Tuesday‘, I created a special ‚Tool of the Week‘ Slack post where I highlighted one of our many in-house tools. This helped the team to gain an overview of all available tools, where to find them, and how to use them effectively.

Technical Documentation

A large part of my job involved writing and maintaining technical documentation for internal tools to facilitate knowledge sharing.

The process—from creating documentation using Markdown to converting it into HTML files and publishing them on a website for easy access—wasn’t entirely straightforward. As a result, I served as the point of contact for anyone wanting to contribute to the documentation, offering assistance with any questions or technical challenges during the creation process. I truly enjoyed this role, as helping others was always rewarding! :)

Process Optimization

There is somehow a little process optimizer in me, so I consistently researched and applied best practices and industry standards in areas such as coding conventions, unit tests, changelogs and code reviews as part of my main duties, as well as creating guidelines and presentations based on my findings.

DevOps and Automation

I also gained some experience in DevOps while maintaining and optimizing a GitLab CI/CD pipeline for Google Cloud Platform, automating build and deployment tasks such as managing our internal documentation and creating NuGet packages.

Cross-functional Collaboration and Mangement

To ensure the successful development and implementation of software features, I closely worked together with Game Designers, Technical Artists, QA, Product Managers, and other Devs :)

Following the Scrumban methodology, we held daily stand-up meetings in smaller teams to align with each other. However, connecting throughout the day to discuss questions, changes, or plans was also a key part of our workflow.

Together with Product Management, I planned the three-month development roadmap for internal tools, which I developed in collaboration with two other team members. Using Jira, I co-managed all tool-related tickets to ensure they were logically structured, contained all necessary information, and nothing was overlooked.