Strong experience in software design, development, integration, and architecture.
Strong understanding of object-oriented programming, design patterns, clean code, SOLID principles, and software engineering best practices.
Experience designing scalable, reliable, secure, and high-performance applications.
Strong experience with API development, REST/SOAP services, system integration, and distributed systems.
Experience with CI/CD, DevOps, automation, source control, and build/deployment pipelines.
Strong knowledge of automated testing, unit testing, integration testing, regression testing, and performance testing.
Experience with debugging, performance tuning, production support, and root cause analysis.
Knowledge of cloud technologies, microservices, databases, messaging systems, and enterprise integration patterns.
Description
Translate business, functional, and non-functional requirements into detailed technical specifications and collaborate with Solution Architects to design robust, scalable, secure, and maintainable solutions aligned with enterprise IT standards.
Apply expert knowledge of the relevant technology stack, software engineering principles, design patterns, and development frameworks to solve complex business and technical challenges.
Represent software engineering in cross-functional and cross-business-area initiatives, providing technical guidance and influencing technology decisions.
Champion automation, DevOps practices, lean software development, continuous improvement, and engineering excellence across development teams.
Lead and participate in root cause analysis, incident investigations, problem management, and lessons-learned activities, ensuring corrective and preventive actions are implemented.
Contribute to the development and continuous improvement of software and data engineering standards, frameworks, playbooks, guidelines, and best practices.
Lead the discovery and inception phases of medium to large-scale projects by developing high-level technical designs, evaluating technology options, identifying risks, and defining implementation approaches.
Collaborate with cross-functional teams to develop and execute proof-of-concepts (PoCs), prototypes, and technical spikes to validate architecture, technology choices, and proposed solutions.
Investigate, troubleshoot, and resolve complex production and application issues, including corner cases, performance bottlenecks, integration failures, and rare or difficult-to-reproduce conditions.
Drive built-in quality throughout the software development lifecycle in collaboration with Quality Assurance and engineering teams.
Lead the technical design and development of complex solutions across multiple teams, reviewing and approving technical designs and ensuring appropriate architecture patterns, coding standards, and engineering practices are followed.