*** No visa sponsorships supported ***
JOB DESCRIPTION
Summary:
The Software Engineer IV plays a lead technical role in an Agile/Scrum based software development environment in creating robust platforms and innovative gaming products for current and emerging markets. The Software Engineer IV has a high-level of proficiency in software design producing high quality, robust, and maintainable products. This engineer has strong SDLC (Software Development Life Cycle) experience, mentors junior developers and is expected to work with little or no supervision. This role requires experience in DevOps, Operations and operationalizing automated test environments.
Job Description:
- Follows a disciplined Agile/Scrum software development process in task estimation, design, development, code reviews, unit/integration testing and defect fixing of products
- Assists in the overall schedule estimations of product releases
- Assists other Software Engineers in the estimation of design and development tasks
- Authors technical design documents for the products
- Works with senior staff to design code that adheres to the written specifications
- Initiates and/or participates in peer reviews of code design and written code
- Documents new/modified code, and develops/automates unit and integration tests to verify the changes
- Analyzes existing software to debug and troubleshoot field issues that may arise
- Identifies and proposes software development process improvement initiatives for improving execution speed and quality
- Assists in the technical analysis of potential tools and commercial products
- Mentors junior Software Engineers in SDLC processes and design/coding patterns
- Performs all other tasks as assigned
Additional Duties and Responsibilities - Software Engineer IV - Team Lead
- Leads a small team of Software Engineers
- Assists with career development of team
- Mentors junior engineers
- Assists with one on ones for team
- Works with team to ensure they have everything they need to do their day to day job (equipment, software, etc.)
Qualifications:
- Experience programming on Linux or Windows platform
- Advanced working knowledge of Object Oriented Analysis and Design (OOAD)
- Knowledge of design/modeling with tools such as UML
- Experience in database design and development
- Attention to detail
- Proven analytical abilities applied to system design and software implementation
- Ability to keep up with new technologies/tools, and design techniques and lead adoption of those technologies with the team
- Proficient in Microsoft Office (Word, Excel, PowerPoint, etc.)
- Excellent communication, planning and organizational skills
- Ability to work well in a team environment
- Experience with continuous integration systems
- Experience in network protocols a plus
Experience in the following:
- Operations – monitoring, alerting, 24x7, runbooks, ORR, etc.
- Python, C#, and/or C++
- Any debugger
- Version control
- Testing frameworks (Pytest)
- CI/CD (Jenkins)
Education, Training and Experience:
- Bachelor’s Degree in Computer Science/Engineering or related field or equivalent experience
- At least 8 years professional software engineering experience; including two or more products
- At least 1 year of gaming or related technology experience is a plus