People behind the department
There are three sub-divisions in the Department of Tech in Agate:
Programmer (Game Programmer, System Programmer, Fullstack Programmer, etc.)
As a Programmer, they need to develop the game by implementing concepts into actual playable games.
Engineer (DevOps Engineer, Data Engineer, QA Engineer, etc.)
To be an Engineer, one needs to make sure the developed game is stable and to ensure the technology pipeline is efficient and well improved.
Research (Research Director, Lead Researcher, Tech Researcher, etc.)
Their function is to explore new technology to find the best implementation for company standards.
Overall, everyone in the Tech Department is required to provide the technological capability to orchestrate game components and infrastructure and also to bring the game design to life. Some targets they need to accomplish are ensuring the company possesses the best possible technology, improving tech crews to become world-class developers, and implementing the best tech advancement.
Skills
In order to develop and bring the game to life, crews in the Tech Department are required to master such essential skills, from coding to design. Their call is also to maintain the game, avoiding bugs and glitches.
Fundamental Skills:
- Logic & problem solving
- General programming
- English
Additional Skills:
- Verbal & written communication
- Basic leadership
Tools
Tools used by a Game Programmer
Game Engine (Unity, PhaserJS, Unreal, Babylon)
Game Engine has a library of programs to help the game development, including visual and sound design.
Multiplayer Engine (Photo Fusion, Photon Quantum (Multiplayer Engine)
Multiplayer engine is used by developer to create a multiplayer environment.
Tools used by Back-end Developer
Backend Framework (Dotnet, C#)
Dotnet provides tools and libraries to build a compatible app or platform from desktop to mobile. A Backend Developer needs to master C# programming language to use Dotnet.
Database (Rediss, MongoDB, Postgresq)
Programmer uses the database to organize a collection of structured information that is electronically stored in a computer system.
Tools used by Front-end Developer
Web Framework (ReactJS, NextJS)
This application is operated by a front-end developer to create a game user interface like menu arrangement, heads-up display, etc.
Tools used by Development & Operations Programmer
Deployment (Kubernetes)
This tool helps developers manage applications made up of many containers and deploy them in different environments (physical or virtual machines).
Cloud Server (GCP, AWS, Azure)
Cloud Server provides storage for assets and computing resources over the internet for users to play the game from their device.
Tools used by All Programmer
Version Control (Git)
A free and open-source distributed control system: tracking changes in any set of files, coordinating works among programmers, and collaboratively developing source code.
Brainstorming & Documentation (Miro, Draw.io, Notion)
These are the tools where ideas are being brainstormed, crafted, documented, and archived.
If you think you want to be a part of this long experience, here are some tips on how to enter and enjoy being in our tech dept by two of our crews:
Technical Director POV
As a Technical Director, we are obliged to ensure the project is well delivered without going directly into that project. Yes, that’s another challenge. We need to monitor the end-to-end process even from scratch and provide suggestions when it is required.
- We are searching for those who are eager to learn.
- We need someone who can communicate well and collaborate.
- Knowledge is power. The more you have, the more you are needed in our dept.
- The quality of your portfolio is what we will be looking at.
Lead Programmer POV
The best and most challenging of working in Agate is that you are not just developing a game, but you are contributing to the whole ecosystem. We are required to adapt and strive to become better and better in the industry.
- It would be best if you had your own goal.
- Learn to master the basic tools and grasp the base theory by experimenting.
- Elevate your team and colleagues as much as possible.
- Be more proactive in approaching a discussion with people. Gain more knowledge.
- Keep progressing even if you need to catch up.
- Follow channels that might be useful on social media, like Instagram, YouTube, or anything else.
Think you might enjoy being in our tech department? Head down to our vacancy list below and see if you match any of it!