Senior Software Engineer (DevOps)- China Digital Hub IT

Purpose & Overall Relevance for the Organization:

Develops information systems by designing, developing, and installing software solutions.


Key Responsibilities:

Systems design

• Designs components using appropriate modelling techniques following agreed architectures, design standards, patterns and methodology.

• Identifies and evaluates alternative design options and trade-offs.

• Creates multiple design views to address the concerns of the different stakeholders of the architecture and to handle both functional and non-functional requirements.

• Models, simulates or prototypes the behaviour of proposed systems components to enable approval by stakeholders.

• Produces detailed design specification to form the basis for construction of systems. • Reviews, verifies and improves own designs against specifications.

Software design

• Designs software components and modules using appropriate modelling techniques following agreed software design standards, patterns and methodology.

• Creates and communicates multiple design views to identify and balance the concerns of all stakeholders of the software design and to allow for both functional and non-functional requirements.

• Identifies and evaluates alternative design options and trade-offs.

• Recommends designs which take into account target environment, performance security requirements and existing systems.

• Reviews, verifies and improves own designs against specifications.

• Leads or participates reviews of others’ designs.

• Models, simulates or prototypes the behaviour of proposed software to enable approval by stakeholders, and effective construction of the software.

• Verifies software design by constructing and applying appropriate methods. Programming/software development • Designs, codes, verifies, tests, documents, amends and refactors complex programs/scripts and integration software services.

• Contributes to selection of the software development approach for projects, selecting appropriately from predictive (plan-driven) approaches or adaptive (iterative/agile) approaches.

• Applies agreed standards and tools, to achieve well-engineered outcomes.

• Participates in reviews of own work and reviews of colleagues' work. Database design

• Develops and maintains specialist knowledge of database and data warehouse concepts, design principles, architectures, software and facilities.

• Assesses proposed changes to object/data structures, in order to evaluate alternative options. • Implements physical database designs to support transactional data requirements for performance and availability.

• Implements data warehouse designs that support demands for business intelligence and data analytics(for data engineering and analytic).


• Accepts responsibility for creation of test cases using own in-depth technical analysis of both functional and non-functional specifications (such as reliability, efficiency, usability, maintainability and portability).

• Creates traceability records, from test cases back to requirements.

• Produces test scripts, materials and regression test packs to test new and amended software or services.

• Specifies requirements for environment, data, resources and tools. • Interprets, executes and documents complex test scripts using agreed methods and standards.

• Records and analyses actions and results and maintains a defect register.

• Reviews test results and modifies tests if necessary.

• Provides reports on progress, anomalies, risks and issues associated with the overall project.

• Reports on system quality and collects metrics on test cases.

• Provides specialist advice to support others. System Integration and Build

• Provides technical expertise to enable the configuration of software, other system components and equipment for systems testing.

• Collaborates with technical teams to develop and agree system integration plans and report on progress.

• Defines complex/new integration builds.

• Ensures that integration test environments are correctly configured.

• Designs, performs and reports results of tests of the integration build.

• Identifies and documents system integration components for recording in the configuration management system.

• Recommends and implements improvements to processes and tools. Availability management

• Contributes to the availability management process and its operation and performs defined availability management tasks.

• Analyses service and component availability, reliability, maintainability and serviceability.

• Ensures that services and components meet and continue to meet all of their agreed performance targets and service levels.

• Implements arrangements for disaster recovery and documents recovery procedures.

• Conducts testing of recovery procedures. Release and deployment

• Assesses and analyses release components. Provides input to scheduling.

• Carries out the builds and tests in coordination with testers and component specialists maintaining and administering the tools and methods – manual or automatic - and ensuring, where possible, information exchange with configuration management.

• Ensures release processes and procedures are maintained.

Application support

• Maintains application support processes, and checks that all requests for support are dealt with according to agreed procedures.

• Uses application management software and tools to investigate issues, collect performance statistics and create reports. Relationship management

• Deals with problems and issues, managing resolutions, corrective actions, lessons learned and the collection and dissemination of relevant information.

• Collects and uses feedback from customers and stakeholders to help measure effectiveness of stakeholder management. • Helps develop and enhance customer and stakeholder relationships.

Key Relationships:

• Global IT

• Respective business function (GOPS, Finance, HR, Brand Marketing, Wholesale/Retail)

• Controlling Requisite

Education and Experience / Minimum Qualifications:

• Four-year college or university degree with focus on Computer Science or IT or related areas, or equivalent combination of education and experience

• Proficient spoken and written command of English

• 5+ years of experience in relevant area Preferred skills

• Programming Language: o Linux scripting (Must Have)( (Bash/Groovy/etc)

• Thinking of Architecture: o microservice based architecture o Cloud Architecture

• DevOps: o Git/Bitbucket (Preferred) o Jenkins/Bamboo/GitLab(prefer Jenkins) o k8s and container technologies(Must) o Experience with directly working on Cloud providers(AWS/AZURE/GCP/AliCloud/PCF/etc)

• Monitoring and Alerting: o Prometheus/Grafana o Instana, o Kibana(ELK)

• Cache: o Redis (Preferred) o akamai + edge caching(CDN)

• Data Storage: o PostgreSQL(Preferred) o MongoDB, DynamoDB, Aurora

• Working Style: o Agile/Scrum (Preferred) o Jira, Confluence

• APIs: o REST/JSON APIs(Must have), SOAP APIs

adidas celebrates diversity, supports inclusiveness and encourages individual expression in our workplace. We do not tolerate the harassment or discrimination toward any of our applicants or employees. We are an Equal Opportunity Employer.

Job Title:  Senior Software Engineer (DevOps)- China Digital Hub IT

Brand:  adidas
Location:  Shanghai
TEAM:  Information Technology
State:  SH
Country/Region:  CN
Contract Type:  Full time
Number:  241769
Date:  Oct 17, 2021