What are the responsibilities and job description for the Software Engineer I position at AGS - American Gaming Systems?
Job Overview
Software Engineer I within the Interactive Game Development team is responsible for working with other engineers to develop game clients and game engines for the Interactive department. The developers participate in all aspects of development, including gathering requirements, design, development, documentation, deployment and maintenance. They are essential for rolling out modern technologies used in the latest games. When working on game engines, the developer will also act as a liaison to game client developers when designing the communication layer between the client and game engine. When working as a game client developer, the developer will be in constant communication with the game engine developer, art team, and game designer to drive the game forward. This position requires a strong work ethic and the ability to self-start, self-regulate workloads, and work well in a group dynamic or independently. Duties involve developing and maintaining common game features. Diagnose and recommend optimizations for games to improve performance at scale and memory management. Develop tools, frameworks and common libraries to improve the game development process.
Minimum Qualifications:
- Bachelor’s degree or equivalent practical experience or graduation from extensive boot camp program
- 1-2 years of software development experience or equivalent experience with school capstone or side projects
- Experience with Javascript or C#
- Understanding of object-oriented design
- Familiarity with common design patterns
- Excellent organizational, oral, and written communication skills
- Experience with version control such as Github, Bitbucket or Similar
Preferred Experience with:
- NodeJS
- Typescript
- Web based architecture
- Casino Gaming
- Project management software such as Jira, Trello, Asana or Similar
- Familiarity with unit testing
Responsibilities:
- Gathering requirements, design, development, documentation, deployment and maintenance
- Act as a liaison to game client developers when designing the communication layer between the client and game engine
- Developing and maintaining common game features
- Diagnose and recommend optimizations for games to improve performance at scale and memory management
- Develop tools, frameworks and common libraries to improve the game development process
- Test the software modules using either automated or manual tests
- Develop and maintain features and modules using company's coding standards while applying design principles and patterns
Note: All offers are contingent upon successful completion of a background check
*Posted positions are not open to third party recruiters and unsolicited resume submissions will be considered free referrals.
AGS is an equal opportunity employer.