Software Engineer II –Java, database, CI/CD
Following is a summary of the essential functions for this job. Other duties may be performed, both major and minor, which are not mentioned below. Specific activities may change from time to time.
Develop customized coding, software integration, perform analysis, configure solutions, using tools specific to the project or the area.
Participate in the development, testing, implementation, maintenance, and support of highly complex solutions in adherence to company standards, including robust unit testing and support for subsequent release testing.
Build non-functional monitoring capabilities and provide escalated support for highly complex applications in production.
Solve complex technical and operational problems.
In an Agile environment:
Responsible for delivering high quality working software and automating manual/reusable tasks working directly, and engage with, the business from the beginning of the design work.
Leverage continuous engineering practices to deliver business value regarding effectiveness of the design.
Actively participate in refining user stories.
Responsible for design, developing, and maintaining automated unit testing, and supporting integration and functional testing.
Responsible for providing automated monitoring capabilities, providing warranty support, and providing knowledge transfer to production support.
Develop code in accordance with the acceptance criteria established by the Product Owner.
The requirements listed below are representative of the knowledge, skill and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
Bachelor’s Degree and four to five years of experience or equivalent education and software engineering training or experience In-depth knowledge in information systems and ability to identify, apply, and implement IT best practices
Understanding of key business processes and competitive strategies related to the IT function
Ability to interpret and convey complex, difficult, or sensitive information
Working knowledge of Continuous Integration, Continuous Deployment practices using Azure DevOps, Jenkins and/or other equivalent tools.
Working knowledge of minimum one year in Openshift/Docker Container solutions and practices.
Working knowledge of relational database design and development in Oracle, Java, Spring, JUNIT/Cucumber, Hibernate and JDBC
Bachelor’s degree in computer science, computer engineering or related degree and 7 years of experience or an equivalent combination of education and work experience
Knowledge of specific applications, technology platforms, programming languages, systems, or business segments Banking or financial services experience.
Knowledge of one or more of the following: Solid foundation in software design with strong analytical and debugging skills
Experience in building high-quality apps or services from the ground up and scaling at an enterprise level Experience with Open Source tools and frameworks
Experience with cloud and container technologies, such as AWS, Azure, strong understanding of SOA and/or Open API methodologies and service architectures.
Experience using web servers and application containers.
Solid knowledge of relational database design and development in Oracle, Java, Spring, JUNIT/Cucumber, Hibernate and JDBC.
Experience with build tools, such as Git, Maven, and Jenkins.
Proven ability to write comprehensive unit and integration tests.