Software Engineer II A - GBS IND
Bank of America
Job Description:
About Us
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!
Global Business Services
Global Business Services delivers Technology and Operations capabilities to Lines of Business and Staff Support Functions of Bank of America through a centrally managed, globally integrated delivery model and globally resilient operations.
Global Business Services is recognized for flawless execution, sound risk management, operational resiliency, operational excellence and innovation.
In India, we are present in five locations and operate as BA Continuum India Private Limited (BACI), a non-banking subsidiary of Bank of America Corporation and the operating company for India operations of Global Business Services.
Process Overview
Enterprise Payments Technology – Global Business Services team is involved in Architecture, Development & Testing. Applications in EPT provide critical services to our customers and clients such as Zelle, that enables person to person payments, Digital Wallets, Debit Card Purchase, Bill Payments, Merchant Acquiring, International and Domestic Remittances, Mortgage Payments, Scheduled Transfers. It also supports capabilities for Card Management, External Account Management and Settlement. The EPT team is playing a crucial role in transformational initiatives and maintaining digital payments change. In Payments we are moving with API first approach. We are transitioning to Continuous Integration and Deployment using the Horizon Platform and focused on test automation using SOATest. Team here is involved in executing strategies like NEVER DOWN, and Payment Simplification. Platform Stability as part of Never Down is also a focus area due to the need for high availability of the payment’s platform for our customers. It is also engaged in a POC for containerization using OpenShift. The India team is spread across 4 locations in India - Chennai, Gurugram, Hyderabad and Mumbai. Continuous Innovation is our motto, with over 100 patents, multiple Opex process improvements to its name. At the same time, we are a highly engaged an motivated team that believes in having fun while working.
Job Description
This individual will be part of the Enterprise Payment Technology development team [EPT] that provides Merchant Services business applications. A Software Engineer II is responsible for developing and delivering complex software requirements to accomplish business goals. Key responsibilities of the role include ensuring that software is developed to meet functional, non-functional, and compliance requirements. This role codes solutions, unit tests, and ensures the solution can be integrated successfully into the overall application/system with clear, robust and well-tested interfaces. They are familiar with development and testing practices of the bank. A Software Engineer II is an individual contributor to a team.
Responsibilities
- Contributes to story refinement/defining requirements.
- Participates and guides team in estimating work necessary to realize a story/requirement through the delivery lifecycle.
- Performs spike/proof of concept as necessary to mitigate risk or implement new ideas.
- Codes solutions and unit tests to deliver a requirement/story per the defined acceptance criteria and compliance requirements.
- Utilizes multiple architectural components (across data, application, business) in design and development of client requirements.
- Assists team with resolving technical complexities involved in realizing story work.
- Contributes to existing test suites (integration, regression, performance); Analyzes test reports, identifies any test issues/errors; Triages the underlying cause.
- Documents and communicates required information for deployment, maintenance, support, and business functionality.
- Participates, contributes 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.
Requirements
Education
- BE / B-Tech M.E./M.Tech (prefer IT/CS specialization)
Certifications If Any
- Azure Cloud Practioner preferred
Experience Range
- 6 - 9 Years
Foundational Skills
- Minimum 6-8 years of proven, hands-on software development experience with at least one year of experience in leading team of engineers
- 5+ years of senior developer experience in designing and implementing complex systems with exposure to application architecture, security & system performance optimization.
- 2+ years of experience in designing and developing solution in Azure or any other cloud solution.
- Hands on in Technologies used C#, Redis, relational and non-relational databases.
- Collaborate with stakeholders to understand the requirement, design scalable, fault tolerant, performant, and secure solution.
- Lead the low-level technical design and ensure overall code quality, conducting code reviews to maintain high development standards
- Ensure deployment readiness, focusing on production preparation, performance optimization and addressing database tasks for smooth delivery.
- Continuously improve the efficiency and throughput of the team by proper prioritization, planning, work breakdown, thus reducing rework.
- Manage defects and collaborate with developers, testers, and business analysts to ensure timely resolution and successful release delivery.
- Ensure the solution meets product acceptance criteria with minimal technical debt.
- Works with the Product Owner to ensure that product backlog/requirements are healthy, with clear acceptance criteria.
- Guides team members with skills and practices (planning and estimation, peer reviews, and other engineering practices)
- Knowledge of industry standards, proactive planning, and the ability to work in a fast-paced environment.
- Exposure to Agile methodology and Proven experience with JIRA
- Strong analytical and problem-solving abilities, with quick adaptation to new technologies, methodologies, and systems
- Excellent documentation and communication skills to work with Global teams.
- Detail-oriented and persistent, able to drive complicated tasks through to completion.
- Ability to work in a collaborative team environment.
- Individual contributor, capable of self-directing daily tasks
- Seeks out best practices to find opportunities for automation and operational excellence
- Review github feature files, branching strategy, maintain github branches
- Must have strong debugging and troubleshooting skills.
- Highly detailed oriented.
Desired Skills
- Functional Knowledge of Banking / Payments Domain
- Agile project lifecycle knowledge.
- Lead and guide team at AIT level
- Good working knowledge on Code Quality (Junit, SONAR etc)
- Basic knowledge on Code review tools (Crucible, Smarbear.. etc)
- Build tools (Maven, ANT etc)
Work Timings
- 11.30 AM to 8.30 PM IST (Flexible as per project needs)
Job Location
Chennai