- Lead Software Engineer
- Tech stack: .NET/C#, Unity, C++
- Experience: Over 8 years
- Team management experience: Managed 10+ developers
Lance Multiplayer game
For approximately two and a half years, I developed a mobile multiplayer game called Lance. This project included my own multiplayer framework and several auxiliary tools. It was primarily based on Unity. I devised a unique solution for simulating physics that operated independently of Unity and could function in console mode.
Experience
Technical
- Developed an RPC code generator and a system for real-time synchronization of game world data between players and an authoritative server.
- Implemented AI for bots using the A* pathfinding algorithm.
- Designed the project architecture to allow the entire game to run in console mode without Unity graphics. The project minimizes the use of static/singletons, enabling the simultaneous running of multiple game instances within the same process. For instance, we can run 100 client instances on 10 threads for server stress testing.
- The transport layer is built on the LiteNetLib library, supporting both TCP and UDP protocols. For UDP, we developed a packet splitting algorithm to adhere to the MTU limit and integrated LZ4 compression.
- Led the development of an in-game social network, emulating the functionality seen in Brawl Stars, allowing players to connect with friends. We also created a storage system using PostgreSQL and NHibernate, a lootbox-based metagame, and other essential project components.
Management
- Managed team recruitment and dismissal processes.
- Facilitated interactions with the investor
- Developed plans for feature implementation and utilized GANTT charts.
Media

