Senior C++ Software Engineer
WHO WE ARE: Grover Gaming, headquartered in Greenville, North Carolina, is a software design and development company that specializes in electronic gaming throughout the United States and Canada. Having more than 325 employees located in eight states, we are working every day toward building a strong foundation of humble, passionate people, effective processes, and superior products. Our dedication to customer service, adaptability, and a diverse range of products has solidified our position as a global leader in the electronic gaming industry, leading to our second year on Inc. Magazine’s list of fastest growing companies in 2020 at #194. Grover Gaming strives to support local communities and has helped raise over $280 Million for charities through its partnerships in charitable gaming markets.
SUMMARY: The Senior Software Engineer will be responsible for building scalable, highly reliable, real time applications as well as maintaining and improving existing software products. The Senior Software Developer will be involved in all aspects of the software development life cycle and work on major product releases.
QUALIFICATIONS: To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- Ability to maintain/improve the quality of existing applications using sound software development practices and refactoring
- Proven track record of developing applications that are fast, flexible, robust, scalable, and secure
- Adapting, developing and teaching the coding standards of Grover
- Ability to clearly articulate complex ideas to peers and stakeholders
- Experience in presenting highly technical concepts to individuals with limited technical knowledge
- Experience developing Cross Platform applications (Windows and Linux)
- Ability to work autonomously, sometimes with few requirements or without significant guidance from product owners
- Ability to adapt to frequently changing software requirements
- Ability to integrate disparate software/hardware components and effectively troubleshoot common issues that may arise
- Must be a team player with a passion for developing high quality software
- Must possess strong organizational and time management skills
- Must possess strong verbal and written communication skills
- 7+ years of experience designing, developing, and deploying applications using C++
- 3+ years of experience developing and debugging applications using Microsoft Visual Studio
- Experience with C++ programming language. Some experience with C# as well.
- Experience with Embedded development.
- Experience using UML to document designs, such as State Transition and Sequence diagrams.
- Experience with developing network communications, using TCP and UDP.
- Experience with writing C++ code for both Windows and Linux operating systems
- Experience in design patterns, gRPC and QT
- Experience with SQLite
WORK ENVIRONMENT: The usual work environment is typical of an office environment. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions. The noise level in the work environment is usually moderate with no material or weather-related hazards except those associated with travel.
This Job Description is to be used as a guide for accomplishing Company objectives. The description incorporates the most typical duties performed and covers only the primary functions and responsibilities of the position. It is recognized that other related duties not specifically mentioned may also be performed. The inclusion of those duties would not alter the overall evaluation of this position.