Summary
We're looking for highly talented and dedicated software engineers/programmers who thrive in fast-paced, ever-changing development environments. As a software engineer, you'll be an integral member of the team which ultimately delivers on games to satisfy our players. You'll be a great team player with a can-do attitude and partner with your fellow team members - Engineers, Artists, Designers, Production and more - to drive the development & project execution towards the desired shape and results, and contribute towards the design and architecture of every feature or game component developed.
What you'll do
- Programming games using C++
- Writing and implementing tools to support game development using C++ & C#
- Programming within all areas of game development
- Test various new features in our game development framework for different jurisdictions.
- Perform effective code review and test design based on white box methodologies
- Write unit tests and component tests
- Design and execute test cases, conduct product requirements analysis.
- Help in improving software quality by effective usage of Memory Profiling, Performance Profiling etc. on Windows and Linux development environment.
- Assist in troubleshooting and debugging code to find the root cause of the issues and provide detailed information to the development team.
- Work with Project Managers and Team Manager in preparing and executing test plans
- Write detailed defect reports
- Bring in ideas/innovations to improve the overall testing process in terms of tools, processes, test cases etc.
- Effective collaboration with Black-box test engineers and software developers to ensure the high quality of the features
- Stay up to date with technological and jurisdictional changes.
- Finding creative technical solutions to design challenges
- Build and design software following standard design patterns
- Communicate progress and escalate issues to management in a timely manner
- Add features and provide support for existing code
- Deliver software components to enable gaming products
- Design and develop high-volume, high-performance, high-availability games using proven C, C++ & C# frameworks and technologies
- Ensure consistent use of shared platform components and technologies
- Design and develop reusable libraries and APIs for use across Aristocrat
- Write unit and integration tests, within automated test environments to ensure code quality
- Write concise yet comprehensive technical documentation
- Identify and reduce potential bottlenecks to ensure maximum team
- Work across the full Software Development lifecycle, from requirements analysis, design, build, test and implementation of a number of application development projects.
- Ensure appropriate response to defects and manage communications between stakeholders.
What we're looking for
- BS Degree in Computer Science or related field, or equivalent experience
- 5+ years in a Software Engineer role or similar role
- Commercial experiences with C++ is highly regarded.
- High level of expertise in C++
- High level of expertise in object-oriented analysis and design.
- Ability to independently, effectively and efficiently come up with creative solutions to complex technical problems.
- Solid working knowledge of design patterns.
- Demonstrable understanding of the value of software processes and development cycles.
- Ability to independently, effectively and efficiently solve complex technical problems.
- Experience in C# .NET, Silverlight, Macromedia Flash, OpenGL, DirectX or other 3D engine frameworks highly favourable.
- Demonstrable understanding of the value of software processes and development cycles.
- Good hands-on knowledge with Jira
- Expert knowledge of designing and writing code
- Knowledge of common data structures and algorithmic solutions
- Ability to work with and extend existing code
- Strong analysis and debugging skills
- Programming experience in the game industry would be advantageous
- Exposure to graphics tools, such as the Adobe suite, is highly desirable.
- Experience with scripting languages
- Experience with multi-processor environments, concurrent processes, threads, system resource allocation and inter-process communications
- Understanding of continuous integration tools, systems background (Unix/Linux and Windows)
- Software Technical expertise in implementing industry standard software methodology and tools
Attributes:
- Excellent communication and problem-solving skills
- Strong people engagement skills
- A mature approach and the ability to assume responsibility for projects and tasks.
- Very strong diagnostic and troubleshooting skills
- Proven ability to utilize creative thinking to solve complex engineering problems
- Ability to manage multiple priorities in a dynamic work environment
If this sounds like an opportunity you'd like to explore, please apply today or contact Sarah Kissane and quote reference number 200910