Senior Software Engineer
Company | SciPlay |
---|---|
Location | Waterloo, IA, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s |
Experience Level | Senior, Expert or higher |
Requirements
- Bachelor’s Degree in Computer Science, Computer Engineering or equivalent
- Experience with the Unity game engine
- 7+ years of software development experience
- Experience writing and debugging in a statically typed language like C#, C++ or Java
- Experience writing and debugging in a dynamically typed language like Javascript, PHP, Ruby or Python
- Experience developing games or other real-time applications
- Experience working with MySQL or another RDBMS
- Experience working with RESTful API architecture
- Strong problem solving, debugging, and troubleshooting skills
- Experience with modern version control systems like Git and Mercurial
- Strong communication skills
Responsibilities
- Work with multiple disciplines and teams to design and implement code and technologies to further our game’s success
- Ensure exceptional code quality by following architectural guidelines, extending them as needed, and implementing effective systems when appropriate
- Stay apprised of and evaluate new technologies and programming practices
- Use Git on a daily basis to manage source code
- Perform code review for fellow engineers
- Research and utilize third party APIs (Facebook, Teak, Adjust, etc)
- Use front end web technologies to implement admin tools (HTML, CSS, and JavaScript)
- Mentor junior engineers and assist them with development and debugging
- Participate in on-site interviews with engineering candidates
- Determine feasibility by evaluating the product requirements, the problem definition, and proposed solutions, while also providing accurate estimates for what it would take to achieve those goals
- Documents and demonstrates solutions by developing documentation, layouts, diagrams, charts, code comments, and writing clear code.
Preferred Qualifications
- Social / Mobile game development
- Experience with creating and maintaining packages.
- Experience with build/CI systems like Jenkins
- Experience with PHP
- Understanding of distributed systems, microservices architecture, and containerization technologies (Docker, Vagrant, etc)
- Experience with cloud services such as Amazon Web Services, Microsoft Azure, or Google Cloud Platform
- Microservice development (Node.js, Lambda, etc)
- Experience working from the command line and using common utilities (grep, tail, etc)
- Experience with NoSQL databases (Couchbase, Memcached, Redis, MongoDB, etc)
- Front end best practices using HTML, CSS, and JavaScript
- Professional experience working in an Agile/Scrum/Kanban environment