Intermediate Software Engineer
Job Description
This is an intermediate development role and
the incumbent must work with limited supervision . Accountabilities for this
role include basic systems analysis, interpreting and executing test plans and
developing specifications. The incumbent is individually accountable for
achieving results through own efforts.
Old Mutual’s longstanding history and
unquestionable success in the financial services industry, provides a solid
foundation for expansion of its digital platform. In support of this, the Data
and Enterprise Services is a dynamic team within the Digital and Data division.
We seek to create seamless and personalized experiences for our 13 million
customers globally. Its core purpose is to design, implement and support key
datasets that provides structured and timely access to actionable business
information whilst championing the needs of the customer always. The Digital
& Data team applies customer-focused design thinking, data management,
cloud engineering, agile and lean development methodologies, and continuous
delivery practices in its deliveries.
This team’s primary focus is to build and
establish the data platform and master data management capabilities by applying
industry knowledge, best practices and innovative ideas to take Old Mutual into
the future through the use of best of breed technologies and applied thinking
and processes on its strategic journey to the cloud.
To complement the existing cross-functional
team, Old Mutual is looking for a Data Engineer who will assist in designing
and also implement scalable and robust processes to support the data
engineering capability. This role will be responsible for implementing and
supporting large-scale data ecosystems across the Group. This incumbent will
use best practices in cloud engineering, data management and data storage to
continue our drive to optimize the way that data is stored, consumed and
ultimately democratized. The incumbent will also engage with stakeholders
across the organization with use of the Data Engineering practices to
facilitate the improvement in the way that data is stored and consumed.
Key Responsibilities
- Assist in designing and
implementing scalable and robust processes for ingesting and transforming
complex datasets.
- Designs, develops, constructs,
maintains and supports data pipelines for ETL from a multitude of sources.
- Creates blueprints for data
management systems to centralize, protect, and maintain data sources.
- Focused on data stewardship and
curation, the data engineer enables the data scientist to run their models
and analyses to achieve the desired business outcomes
- Ingest large, complex data sets
that meet functional and non-functional requirements.
- Enable the business to solve the
problem of working with large volumes of data in diverse formats, and in
doing so, enable innovative solutions.
- Design and build bulk and delta
data lift patterns for optimal extraction, transformation, and loading of
data.
- Supports the organization’s cloud
strategy and aligns to the data architecture and governance including the
implementation of these data governance practices.
- Engineer data in the appropriate
formats for downstream customers, risk and product analytics or enterprise
applications.
- Development of API’s for
returning data to Enterprise Applications.
- Assist in identifying, designing
and implementing robust process improvement activities to drive efficiency
and automation for greater scalability. This includes looking at new
solutions and new ways of working and being on the forefront of emerging
technologies.
- Work with various stakeholders
across the organization to understand data requirements and apply technical
knowledge of data management to solve key business problems.
- Provide support in the
operational environment with all relevant support teams for data services.
- Provide input into the management
of demand across the various data streams and use cases.
- Create and maintain functional
requirements and system specifications in support of data architecture and
detailed design specifications for current and future designs.
- Support test and deployment of
new services and features.
- Provides technical leadership to
junior data engineers in the team
Qualifications
- Matric, with a degree in Computer
Science, Business Informatics, Mathematics, Statistics, Physics or
Engineering.
- 3+ years of data engineering
experience
- 3+ years of experience with any
data warehouse technical architectures, ETL/ELT, and reporting/analytics
tools including , but not limited to , any of the following combinations
(1) SSIS and SSRS, (2) ETL Frameworks, (3) Data conformance, (4)
Cacheing, (5) Spark (6) AWS data builds
- The candidate having DBA ability
and knowledge across at least 2 platforms (example: TSQL, SAS, PSQL, IBM
VSAM, DynamoDB and DB2) will also be beneficial.
- Should be at least at a
proficient level in at least one of Python, Java, C/C++ or similar
- Should be Proficient in bash/ksh,
perl, SQL
- Some experience with R, AWS, XML,
json, cron will be beneficial
- Experience with designing and
implementing Cloud (AWS) solutions including use of APIs available.
- Some experience with Dev/OPS
architecture, implementation and operation would be advantageous.
- Knowledge of Engineering and
Operational Excellence using standard methodologies. Best practices
in software engineering, data management, data storage, data computing and
distributed systems to solve business problems with data.
- Some experience in applying
SAFe/Scrum/Kanban methodologies.
- Knowledge and understanding of
business process management lifecycle which covers the design, modelling,
execution, monitoring, and optimization as well as business process
re-engineering
- Good problem solving skills: The
ability to exercise judgment in solving technical, operational, and
organizational challenges, to identify issues proactively, to present
solutions and options leading to resolution
- Good programming, performance
tuning and troubleshooting skills, using the latest popular programming
languages such as python, scala, java and suite of Microsoft languages C#
and F# preferable.
Competences
- Collaboration and precise
communication
- Establishing and maintaining
strong working relationships with stakeholders and user community
- Strategic thinking
- Leading with Influence
- Innovating and being curious
about technology
- Quality in execution and
outcomes
How to Apply