Software Engineer II

Posted:
10/2/2024, 5:00:00 PM

Location(s):
Charlotte, North Carolina, United States ⋅ North Carolina, United States

Experience Level(s):
Senior

Field(s):
Software Engineering

Job Description:

At Bank of America, we are guided by a common purpose to help make financial lives better through the power of every connection. Responsible Growth is how we run our company and how we deliver for our clients, teammates, communities and shareholders every day.

One of the keys to driving Responsible Growth is being a great place to work for our teammates around the world. We’re devoted to being a diverse and inclusive workplace for everyone. We hire individuals with a broad range of backgrounds and experiences and invest heavily in our teammates and their families by offering competitive benefits to support their physical, emotional, and financial well-being.

Bank of America believes both in the importance of working together and offering flexibility to our employees. We use a multi-faceted approach for flexibility, depending on the various roles in our organization.

Working at Bank of America will give you a great career with opportunities to learn, grow and make an impact, along with the power to make a difference. Join us!

Position Summary

We are seeking a Software Engineer II to join our CashPro Payments team at Bank of America. The ideal candidate be a seasoned, hands-on developer having the required skills and experience needed to be a senior member on a high performing agile team. We are on a multi-year modernization journey that will include re-architecting the application and migrating it to a modern technology stack to meet our increasingly demanding environment. Key success criteria for the modernization effort include quality of service and security. This role will work in the capacity of individual contributor, actively contributing towards the key success criteria mentioned afore. This position will be tasked with leading an agile team of developers, planning, and executing the day-to-day activities of the team, leading to delivery of software into production environment in time with quality.

The Software Engineer II will work closely with Scrum Master, Product Owner, Product Manager, QA Lead, agile team members and technology manager to ensure all delivery goals are met, while maintaining all agile metrices within defined thresholds. The successful candidate will have a strong background in Java/Spring/NOSQL/Oracle (required), Restful Services (Required), Agile work environment (required) and be adept at problem-solving, communication and collaboration in a highly matrixed and dynamic environment.

Responsibilities:

  • This is a senior developer role, expected to lead and mentor a team of junior to mid-level developers in an agile scrum team environment.

  • Serve as a SME on software design and development, with emphasis on Java and spring framework technologies.

  • Serve as a single point of contact for release planning and orchestration.

  • Serve as a SME on entitlement management and provisioning and enforcement.

  • Will be expected to learn new technologies on the job, for example, OpenShift.

  • Work with other leads across teams to coordinate delivery.

  • Serve as a SME on agile delivery process.

  • Contribute to story refinement/defining requirements.

  • Participate and guide team in estimating work necessary to realize a story/requirement through the delivery lifecycle.

  • Perform spike/proof of concept as necessary to mitigate risk or implement new ideas.

  • Code solutions and unit test to deliver a requirement/story per the defined acceptance criteria and compliance requirements.

  • Utilize multiple architectural components (across data, application, business) in design and development of client requirements.

  • Assist team with resolving technical complexities involved in realizing story work.

  • Contribute to existing test suites (integration, regression, performance), analyze test reports, identify any test issues/errors, and triage the underlying cause.

  • Document and communicate required information for deployment, maintenance, support, and business functionality.

  • Participate, contribute, and can coach team members in the delivery/release (CI CD) events. e.g. branching timelines, pull requests, issue triage, merge/conflict resolution, release notes.

  • Has demonstrated the ability to design and develop significant components within an application; has performed code reviews.

  • Ability to design and develop significant components.

  • Proficient in designing, developing, and executing testcases.

  • Ability to perform and support continuous integration and deployment activities within their role.

  • Understanding of DevOps culture

  • Possess understanding of architecture and bank standards.

  • Set up and develop a continuous integration/continuous delivery pipeline.

  • Automate manual release activities.

  • Mentor other Software Engineers and coach team on CI CD practices and automating tool stack.

  • Ability to identify risks and provide mitigation plan.

  • Knowledge of data management practices and technologies

  • Ability to collaborate with team and across teams.

  • Ability to identify root causes to solve complex problems in highly unstable situations.

Required Skills

  • Bachelor’s degree in computer science or related field.

  • 12+ years of development experience in Java/J2EE/Spring.

  • Expert level knowledge in building high traffic, performant Restful services (more than 1000 calls per second with response time of less than 50ms) using spring framework.

  • Domain knowledge and experience working in financial industry, specifically on Payments.

  • Expertise in complex SQL and query plans

  • Minimum 2+ years of hands-on experience with CashPro Payments development

  • 5+ years of hands-on experience in building high traffic, high resilient applications using Apache Kafka.

Desired Skills

  • Agile scrum master certification

  • Financial banking experience

  • API experience

Skills:

  • Application Development

  • Automation

  • Collaboration

  • DevOps Practices

  • Solution Design

  • Agile Practices

  • Architecture

  • Result Orientation

  • Solution Delivery Process

  • User Experience Design

Shift:

1st shift (United States of America)

Hours Per Week: 

40

Bank of America

Website: https://bankofamerica.com/

Headquarter Location: Charlotte, North Carolina, United States

Employee Count: 10001+

Year Founded: 2007

Last Funding Type: Seed

Industries: Asset Management ⋅ Banking ⋅ Finance ⋅ Financial Services ⋅ FinTech