• The Senior Java developer will join the development team to actively design and develop a new generation of gaming platform and services.
• The web gaming applications are highly configurable and customizable, are under a high transaction rate with high robustness and scalability requirements.
Major technical duties include:
• Design and develop new functionality of the platform
• Maintain and improve existing modules, subsystems and legacy code
• Take ownership of development tasks and implement on time and with high quality
• Understand underlying gaming domain and leverage the knowledge in design and development of the systems
• Design and implement unit and integration tests, and assist QA team with test case modeling
• Develop APIs and integrations with mobile clients and other systems
• Participate in troubleshooting and ongoing support of production systems
• Assist other team-members with resolving various development problems
• 5-8 years of Java development experience focusing on distributed server-side systems including web and stand-alone applications
• Good understanding of in-memory data-structures and associated algorithms
• Solid knowledge of Spring and Hibernate/JPA
• Solid SQL and data modeling knowledge
• Experience with MySQL or similar relational databases
• Experience with Web Services – REST and SOAP
• Good understanding of multi-threading and concurrency
• Experience with Groovy/Grails a strong asset
• Experience with spring boot web services
• Familiarity with Casino games (poker, etc) a strong asset
• Experience with Tomcat and Linux as operational environment
• Knowledge and experience with Object-Oriented and Service-Oriented Architectures
• Understanding of performance and scalability optimization
• Understanding of DB scaling and optimizations
• Ability to work in a deadline driven, fast-paced environment
• Ability to adapt to new environments, and the ability to identify, propose and implement changes and improvements.
• Solid analytical and problem solving skills.
• Strong interpersonal and communication skills, both written and verbal.
• Formal Computer Science education
• Innovative, creative, visionary
• Independent and self-motivated
• Enjoys and works well in teams, but also thrives in autonomy
• Exhibits the important balance of patience and determination that allows entrepreneurial businesses to flourish
• Organized and thorough
• Collaborative team player, excited and willing to do what it takes to get the job done