Summary:
We are looking for a full-time Senior Software Engineer for our direct Gaming industry client in Franklin, TN. Senior Software Engineer will work on all phases of applications development, systems analysis, and programming activities as per requirement.
Skills and Experience Required:
- Familiarity with casino gaming or similar technologies
- Solid practical expertise in one or more of the following Microcontrollers, embedded systems, and WPF, WCF, and LINQ
- Understanding of network protocols
- Low level communication protocols (e.g. RS-232)
- Proprietary hardware protocols
- Experience with automated testing
- Casino gaming or related technology experience
- Strong working knowledge in one or more of the following: WPF, WCF, LINQ
- Experience with Windows or Linux Embedded OS
Responsibilities:
- Follow a disciplined Agile/Scrum software development process in task estimation, design, development, code reviews, unit/integration testing and defect fixing of gaming 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 class 2 and class 3 games
- Work 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
- Analyze 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
Qualifications:
- Computer science or a closely related discipline as a major, or comparable experience
- 8+ Experience programming on the Linux or Windows platform utilizing Python, C#, and/or C++
- Knowledge of Object-Oriented Analysis and Design at a high level of proficiency (OOAD)
- Understanding of design/modeling with software like UML
- Experience designing and developing databases
- A mastery of Microsoft Office (Word, Excel, PowerPoint, etc.)
- Excellent planning, organizing, and communication abilities
- Being able to operate successfully in a group Continuous integration system experience