The Senior Software Engineer is responsible for designing, developing, and maintaining the company's product master data management (PMDM) system. The engineer will also be responsible for integrating the PMDM system with other systems as well as troubleshooting and resolving issues with the PMDM system.
Delivery of enterprise data micro-services in a Service Oriented Architecture (SOA) environment.
Work with multiple agile development teams to produce a consistent set of data services that can be utilized for data collection and distribution across multiple work streams: Master Data Management (MDM), Analytics, Enterprise Content Management (ECMS), eCommerce as well as operational applications.
Work in partnership with Architecture, Master Data Management and ECMS teams to design, develop and deliver data and integration services across multiple technology domains.
Ensure that code adheres to strict standards and best practices for accessibility, security, object-oriented practices and performance .
Identify ways to package new and existing services and capabilities to provide a comprehensive SOA-based platform for data collection and distribution.
Model, design, and develop REST-based web services, service wrappers, service interfaces, APIs, messaging systems (e.g., via ESB technologies) and other integration patterns as may be required.
Model and implement solutions for different deployment and continuous integration scenarios and assist in the development of a build/deploy environment.
Design databases and data messages exchanged among systems based on evolving standards in the domain.
Design and build a reusable, expandable and scalable data services platform that will integrate data from various sources and interfaces that include structured and un-structured data sources.
Produce documentation of standards and guidelines for technical and functional audiences, to include working code examples and interface definitions and templates. Provide leadership, mentoring, and technical training to other data service team members.
Drive, and champion test-driven and agile development, as well as promoting and evolving best practices within the organization.
Troubleshoot and resolve issues with the MDM system.
Maintain and update the MDM system documentation
Train and mentor junior engineers.
Strong core Java, OOD, Design Patterns, SOA, REST-based web services
Strong proficiency in Java 17/21+ to ensure AI-generated code leverages modern language features rather than outdated patterns.
Test driven development (TDD) methodology and tools
Test driven development to AI driven workflow.
Mastery of AI coding tools like VS Code, GitHub Copilot, Cursor, or Amazon Q to automate code generation from test suites.
Deep expertise in JUnit 5, Mockito, AssertJ, or Testcontainers to design the rigorous test boundaries that guide AI generation.
Ability to write precise, context-rich prompts that force AI models to generate deterministic, minimal, and secure implementation code
Proficiency with JavaScript/XML/XLST/JSON/JSON-LD
Knowledge of open-source technology such as Linux and Apache stacks
Maven, Jenkins or other continuous integration
Messaging technologies such as Kafka/JMS and ESB
Demonstrable knowledge of both stream and ETL/Batch data aggregation patterns
AWS services such as RDS, EKS, Redshift, Kinesis and S3
Multiple DBMS storage engines, models and access methods:
MySQL
SQL Server
Oracle
DB2
Have working knowledge of any of the Master Data Management (MDM) systems listed below:
Stibo Systems MDM (STEP)
Informatica MDM
Oracle MDM