Software Engineer Kafka & ELK - Consumer Order Management



Area:                                                                                                        Sales Tech

Subsidiary/Country:                                                                      Colombia

Location:                                                                                          Bogota

GSMS Grade:                                                                                         M4

Hiring Manager:                                                                        Ekesh Mehta

Recruiter:                                                                                   Amalia Arciniegas       



Purpose & Overall Relevance for the Organization:


The Consumer Order Management team in Sales Tech is responsible for designing, building and

delivering best in class global OmniChannel Tech solutions. We work in collaboration with the Digital Sales Solutions to deliver best services across all consumer touchpoints. We are consumer obsessed and excited about new technologies and solutions that allow our consumers to get what they want, where they want it and when they want it. We keep the consumer at the heart of everything we do.

As part of the Software Engineering team, your mission is to deliver high quality software at speed. You will be working developing and operating our software products, showcasing your creativity and using the latest technologies to bring ideas to life.


Requisite Education and Experience / Minimum Qualifications:


  • Hands-on experience in developing with Kafka (including but not limited to writing Producers, Consumers), developing with Kafka Connect, Kafka Streams, interacting with a Highly Available KAFKA Cluster. Knowledge of KsqlDB is a huge advantage
  • Knowledge of server-side technologies such as Docker, Kubernetes, NodeJS, Java… 
  • Hands on experience on ELK (Elastic-Logstash-Kibana) Stack
  • Experience working in agile teams
  • DevOps mentality and willingness to live the DevOps culture to support services/ products that are being built
  • Eager to look for perfection in your coding through software development best practices, Continuous Integration/Delivery, Unit Test Automation and Everything as Code
  • Strong interpersonal and communication skills. Fluent in English preferred.
  • College or university degree with focus on IT or equivalent.
  • At least 4-year experience in IT
  • 2 years of experience in relevant area
  • 1 year of experience in team management
  • Participated in projects with people from other functions/markets


Key Responsibilities:


Specialist advice

  • Actively maintains knowledge in one or more identifiable specialisms.
  • Provides detailed and specific advice regarding the application of their specialism(s) to the organisation's planning and operations.
  • Recognises and identifies the boundaries of their own specialist knowledge.
  • Collaborates with other specialists, where appropriate, to ensure advice given is appropriate to the needs of the organisation.


Emerging technology monitoring

  • Supports monitoring of the external environment and assessment of emerging technologies to evaluate the potential impacts, threats and opportunities to the organisation.
  • Contributes to the creation of reports, technology roadmapping and the sharing of knowledge and insights.


Requirement and Definition Management

  • Defines and manages scoping, requirements definition and prioritisation activities for small-scale changes and assists with more complex change initiatives.
  • Follows agreed standards, applying appropriate techniques to elicit and document detailed requirements.
  • Provides constructive challenge to stakeholders as required.
  • Prioritises requirements and documents traceability to source.
  • Reviews requirements for errors and omissions.
  • Provides input to the requirements base-line.
  • Investigates, manages and applies authorised requests for changes to base-lined requirements, in line with change management policy.


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 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 leads 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.


System Integration and Build

  • Defines the software modules needed for an integration build and produces a build definition for each generation of the software.
  • Accepts completed software modules, ensuring that they meet defined criteria.
  • Produces software builds from software source code for loading onto target hardware.
  • Configures the hardware and software environment as required by the system being integrated.
  • Produces integration test specifications, conducts tests and records and reports on outcomes.
  • Diagnoses faults and records and reports on the results of tests.
  • Produces system integration reports.


Release and deployment

  • Uses the tools and techniques for specific areas of release and deployment activities.
  • Administers the recording of activities, logging of results and documents technical activity undertaken.
  • May carry out early life support activities such as providing support advice to initial users.


Application support

  • Identifies and resolves issues with applications, following agreed procedures.
  • Uses application management software and tools to collect agreed performance statistics.
  • Carries out agreed applications maintenance tasks.


Key Relationships:


  • Global IT
  • Respective business function (GOPS, Finance, HR, Brand Marketing, Wholesale/Retail)
  • HR Management
  • Controlling


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:  Software Engineer Kafka & ELK - Consumer Order Management

Brand:  adidas
Location:  Bogota
TEAM:  Engineering
State:  DC
Country/Region:  CO
Contract Type:  Full time
Number:  398432
Date:  Dec 31, 2021