Job Description:
- As a Software Engineer III at client, candidate serves as a seasoned member of an agile team to design and deliver trusted market-leading technology products in a secure, stable, and scalable way.
- Candidate is responsible for carrying out critical technology solutions across multiple technical areas within various business functions in support of the firm's business objectives.
- Proficient in application development skills for more than one technology as well as multiple design techniques.
- Working proficiency in development toolset to design, develop, test, deploy, maintain and improve software.
- Strong understanding of Agile methodologies with ability to work in at least one of the common frameworks.
- Strong understanding of techniques such as Continuous Integration, Continuous Delivery, Test Driven Development, Cloud Development, application resiliency and security.
- Proficiency in one or more general purpose programming languages.
- Working proficiency in a portion of software engineering disciplines and demonstrates understanding of overall software skills including business analysis, development, testing, deployment, maintenance and improvement of software.
Job Responsibilities:
- Executes creative software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or breakdown technical problems
- Develops secure and 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
Qualifications:
- Formal training or certification on software engineering concepts and 5 plus years applied experience
- Hands-on practical experience delivering system design, application development, testing, and operational stability
- Advanced in one or more programming language(s)
- Proficiency in automation and continuous delivery methods
- Proficient in all aspects of the Software Development Life Cycle
- Advanced understanding of agile methodologies such as CI/CD, Application Resiliency, and Security
- Demonstrated proficiency in software applications and technical processes.
Skills Required:
- Java (Springboot) and/or Python to an advanced level
- Experience of Microservices / API's / Containers
- SQL to an advanced level with exposure to modern databases (MySQL, PostgressSQL).
- Mainframe database exposure DB2, IMS, etc. an advantage
- Jules/Jenkins, BitBucket/GitHub knowledge
- Agile processing Scrum/Kanban with experience of using Atlassian Suite (JIRA, Confluence, JIRA Align)
- Exposure to z/OS connect an advantage
Programming Languages (mandatory):
- Java, Python, C#/.Net, Mean, Ruby, JSON
- Database (mandatory)
- SQL, MAriaDB, S3, DB2, IMS
- DevOPS
- Broadcom Endevor, BitBucket, GITHub, Jules, Jenkins
- Agile
- Atlasian Suite (JIRA, Confluence, JIRA Align)
- Scrum / Kanban
- Microservices / APIs / Containers
- z/OS Connect
- Docker, Kubernetes