Job responsibilities
- Executes creative software solutions, design, development, and technical troubleshooting with the ability to think beyond routine or conventional approaches to build solutions or break down technical problems.
- Develops secure high-quality production code, and reviews and debugs code written by others.
- Identifies opportunities to eliminate or automate remediation of recurring issues to improve overall operational stability of software applications and systems.
- Leads evaluation sessions with external vendors, startups, and internal teams to drive outcomes-oriented probing of architectural designs, technical credentials, and applicability for use within existing systems and information architecture.
- Leads communities of practice across Software Engineering to drive awareness and use of new and leading-edge technologies.
- Adds to team culture of diversity, equity, inclusion, and respect.
- Engages with stakeholders to understand their needs and translate them into technical requirements and actionable tasks.
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience.
- Hands-on practical experience delivering system design, application development, testing, and operational stability.
- Strong knowledge in Java, J2EE, and Spring Boot Microservices, as well as AWS, Kafka, and strong knowledge on Design Patterns.
- Expertise in advanced Java frameworks such as Hibernate, Spring Security, and Spring Cloud.
- Ability to manage multiple projects simultaneously, ensuring timely delivery and alignment with business objectives.
- Proven ability to design and implement scalable and high-performance Java applications.
- Proficiency in using version control systems like Git and collaboration tools such as JIRA and Confluence.
- Strong system design and architecture design skills, with the ability to create scalable and efficient software architectures.
- Experience working with messaging systems, including development of scalable real-time data processing systems.
- Experience managing technologists, building large enterprise applications beyond exposing REST endpoints on database and cloud native applications based on 12 factor methodology.
- Excellent problem-solving skills, with the ability to think critically and make informed decisions.
Preferred qualifications, capabilities, and skills
- Proficiency in Java, Spring Boot, AWS, Kafka, SQL, and NoSQL databases.
- Experience with cloud platforms and services, such as AWS, Azure, or Google Cloud, and understanding of cloud-native application development.
- Demonstrated ability to lead and mentor junior engineers, fostering a collaborative and innovative team environment.
- Excellent problem-solving skills with a focus on delivering scalable and efficient software solutions.
- Strong understanding of software development lifecycle methodologies, including Agile and DevOps practices.
- Effective communication skills, with the ability to convey complex technical concepts to non-technical stakeholders.
- Experience with continuous integration and continuous deployment (CI/CD) pipelines and tools.