We're seeking a Senior Software Engineer with in-depth experience in IBM App Connect Enterprise (ACE), integration patterns, APIs, messaging, and cloud-native architectures. This role involves working closely with cross-functional teams to architect scalable, secure, and reliable integration platforms that support critical business processes.
What You Will Do:- Apply and contribute to integration patterns, standards, and best practices (e.g., REST, SOAP, MQ, Kafka, event-driven integration).
- Develop solution architecture documents, mapping technical requirements to integration designs.
- Evaluate and recommend integration technologies.
- Develop ACE message flows, sub flows, message models, and integration services.
- Implement integrations using ESQL, Java, and other supported technologies.
- Build and secure REST APIs, SOAP web services, and event-based integrations.
- Work with message sets, DFDL schemas, JSON, XML, and various data transformation tools.
- Integrate ACE with IBM MQ, HTTP(S), JDBC, SaaS endpoints, Kafka, and cloud-native services.
• Deploy ACE solutions on containers, Kubernetes/OpenShift, or on-premises environments.
• Implement CI/CD automation for integration services (Git, Jenkins, Tekton, UrbanCode, or equivalents).
• Configure ACE runtime components, bar files, policies, and security profiles.
• Troubleshoot integration issues, performance bottlenecks, and runtime errors.
• Optimize message flows and improve reliability, resiliency, and throughput.
• Implement monitoring, logging, and alerting using tools such as AppDynamics, Splunk, ELK, or IBM tools.
- Lead end-to-end execution of projects and features of moderate complexity through delegation, code review, and driving results. Contribute to the defined software engineering roadmap by delivering well-scoped technical solutions.
- Manage and partner with third party providers, vendors, and contractors to ensure project delivery meets quality and timeliness standards.
- Implement and test complex code changes to fix identified defects in existing software products.
- Add enhancements to new/future software releases; and assist in developing design solutions.
- Demonstrate strong knowledge of on-premise solutions and cloud-based solutions; execute on cloud-based configuration plans for new systems and technologies.
- Identify and recommend improvements to the software development lifecycle and best practices in agile engineering.
- Lead delivery of high-quality design of features and deliverables. Identify opportunities for multiple products to work together to create value for customers.
- Integrate product features as it relates to design of the product (market awareness, production adoption, competition) and track related metrics.
- Communicate effectively by tailoring the level of detail to the audience and situation.
- Document design decisions and system support requirements.
- Partner with cross functional peers and/or customers to understand software requirements and propose solutions.
- Collaborate with the team on solution design and estimation of coding tasks and user stories.
- Support the growth of less experienced team members by mentoring, assisting with training, demonstrating empathy, and acting as a resource.
- Drive improvements in source code management, test process/automation, logging, system health monitoring, and related automation.
- When needed, add code comments and refactors to improve readability, modularity, and to make systems easier to maintain.
- Participate in a team on-call rotation and work to resolve the root causes of software failures.
- Impact team source code strategy, application performance, product feature decisions, customer/client experiences, and software maintainability.
- Influence own team and cross functional peers (e.g., TPMs, Product Managers, UX, etc.).
- Liaise with business analysts to develop tools and templates that support gathering and addressing client and business requirements.
What You Need to Succeed:• Bachelor's degree in Computer Science or related field or equivalent experience.
• 4+ years (ideally 4-6 years) of software engineering experience with 4+ years of hands-on experience with IBM App Connect Enterprise (ACE).
• Working knowledge of ESQL, Java, message flows, DFDL, and data transformation.
• Proficiency in designing and implementing REST APIs and service orchestration.
• Solid understanding of integration patterns (synchronous, asynchronous, pub/sub, event-driven).
• Hands-on experience with IBM MQ, HTTP integrations, JDBC, and file-based flows.
• Experience deploying solutions on Docker, Kubernetes, or Red Hat OpenShift.
• Working knowledge of software design, data structures, algorithms, code construction, versioning, and deployment.
• Strong troubleshooting, performance tuning, and code review skills, with the ability to assess code correctness, readability, flexibility, supportability, and security.
• Experience with Continuous Integration/ Deployment (CI/CD) and test-driven development.
• You have an understanding of how to efficiently use compute resources.
• Ability to articulate the pros and cons of relational vs. non-relational DB types.
• You have an effective method for estimating how long it will take to code a solution.