Job responsibilities
- Executes creative software solutions, design, development, and technical troubleshooting with 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
- Gathers, analyzes, and draws conclusions from large, diverse data sets to identify problems and contribute to decision-making in service of secure, stable application development
- Learns and applies system processes, methodologies, and skills for the development of secure, stable code and systems
- Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and proficient applied experience.
- Demonstrable ability to code in one or more languages such as Java, Core Java , Spring Framework, Spring Boot and related technologies.
- Proven experience in python coding and related technologies.
- Extensive experience with RESTful APIs, micro services architecture, and web services.
- Extensive experience with database technologies, including SQL databases (e.g., Oracle, MySQL, postgres).
- Experience with middleware and messaging technologies (e.g., Kafka),
- Proficiency in testing tools and automation techniques (e.g., JUnit, Mockito) and caching/search frameworks (e.g., Elasticsearch, Gemfire Cache).
- Hands-on practical experience in system design, architecture ,application development, testing, and operational stability
- Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
- Experienced in leading and mentoring junior team members
- Experience across the whole Software Development Life Cycle, exposure to agile methodologies such as CI/CD, Application Resiliency, and Security
Preferred qualifications, capabilities, and skills
- Exposure to cloud platforms (e.g., AWS) and containerization technologies (e.g., Docker, Kubernetes).
- Familiarity with modern front-end technologies (e.g., HTML5, JavaScript, React JS).
- Advanced knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, etc.)