We are looking for a Mid/ Senior Data Developer with proven data integration skills to develop and support Integration, ETL , Data Warehouse and Reporting solutions, as well as data driven and ML based services such as personalization or customer profiles offered as APIs and streams to other business units. Working within an agile environment you will team up with Data Warehouse, ML, data services and QA engineers and system integrators to work on projects prioritized by various areas of the business;
The successful candidate will have good technical and problem solving skills, with a positive and results driven attitude, a strong communicator who can interact with both technical and non-technical people.
Key Responsibilities / Duties:
- Work as an effective member of a scrum team – understanding and contributing to the agile delivery process, and taking ownership for your team’s software quality from concept to production
- Create and promote the use of behaviour/test-driven development at multiple levels within the software by pairing with production code developers and product owners.
- To deliver excellent production quality code and encourage and mentor other developers to do so
- To be proactive in identifying holistic approaches across diverse programs, projects and technologies
- To promote the production of reusable code and modules where appropriate with a view to maximising effort and reducing development costs applying principles of Agile delivery.
- To be proactive in the identification of opportunities to improve and rationalise applications and processes across the whole Data team, working in close collaboration with other Data team members and subject matter experts.
- To liaise closely with other Data team members and subject experts to ensure that accurate and effective support documentation is maintained to reflect code development and changes.
- To ensure risks and issues are identified in a timely manner and effectively communicated with proposed resolution and mitigation strategies to the Data Delivery Manager
- To be proactive and drive the building of effective relationships across Data and key areas of business stakeholder community
- Write and maintain functional and technical specifications
- Monitor, optimize and trouble shoot database, microservice and stream and ML service performance
- Analyse code for problem resolution
- Thorough, demonstrable unit testing
Experience & Qualifications:
- Excellent SQL, preferably on both RDBMS and an MPP platform like Redshift or another big data platform like Hadoop
- Dimensional data modelling
- Demonstrable experience with high-volume data loads (terra bytes and above)
- Knowledge of ETL from highly transactional (1000s records/second) OLTP systems
- Demonstrable experience of object oriented and or functional programming in python or java
- A proven ability to influence technical decisions in a fast moving commercial environment
- Demonstrates excellent people skills
- Demonstrates exceptional communication, interpersonal skills and consistent high energy levels
- Proven development skills in at least one and preferably two or more of the following:
- Kafka or another message based streaming platform
- Machine learning and analytics in either python or R
- Unix Scripting
- Open source NoSQL technologies (e.g. MongoDB, CouchDB, ElasticSearch).
- AWS (preferable) or experience of data engineering on another leading cloud vendor such as GCP or Azure
- Experience of database performance analysis and design
- Unit testing knowledge
- Exposure to Continuous Delivery / Continuous Integration tools (e.g. Go, Jenkins)
- Knowledge of the online gaming/gambling industry
- Educated to degree level in a science or technology related field
Key Skills and Attributes:
- Proactive work ethic with the ability to deliver results and meet challenging deadlines
- Passion & flexibility to work the hours required to see projects to completion in a timely, accurate & efficient manner.
- Attention to detail with a high degree of pride in work produced.
- Proven ability & desire to innovate.
- Strong analytical skills.
- Enthusiasm for the software development process.
- Good English language skills.