Senior Software Engineer (Java)
Role details
Job location
Tech stack
Job description
This job is responsible for defining and leading the engineering approach for complex features to deliver significant business outcomes. Key responsibilities of the job include delivering complex features and technology, enabling development efficiencies, providing technical thought leadership based on conducting multiple software implementations, and applying both depth and breadth in a number of technical competencies. Additionally, this job is accountable for end-to-end solution design and delivery., + Ensures that the design and engineering approach for complex features are consistent with the larger portfolio solution
-
Define the technology tool stack for the solution and evaluate and adapt new testing tool/framework/practices for team(s)
-
Enables team(s)/applications with Continuous Integration/Continuous Development (CI/CD) capabilities and engages with other technical stakeholders pertaining to efficient functioning of CI-CD pipeline
-
Guides and influences team(s) on design and best practices for high code performance -e.g. pairing, code reviews
-
Provides end-to-end delivery of complex features, including automation, for either a single team or multiple teams, at the program level
-
Conducts research, design prototyping and other exploration activities such as evaluating new toolsets and components for release management, CI/CD, and features
-
Works with stakeholders to establish high-level solution needs and with architects for technical requirements
-
Innovate regularly by participating in ideation sessions and filing patents, Bank of America and its affiliates consider for employment and hire qualified candidates without regard to race, religious creed, religion, color, sex, sexual orientation, genetic information, gender, gender identity, gender expression, age, national origin, ancestry, citizenship, protected veteran or disability status or any factor prohibited by law, and as such affirms in policy and practice to support and promote the concept of equal employment opportunity, in accordance with all applicable federal, state, provincial and municipal laws. The company also prohibits discrimination on other bases such as medical condition, marital status or any other factor that is irrelevant to the performance of our teammates.
View your "Know your Rights (https://www.eeoc.gov/sites/default/files/2023-06/22-088_EEOC_KnowYourRights6.12.pdf) " poster.
View the LA County Fair Chance Ordinance (https://dcba.lacounty.gov/wp-content/uploads/2024/08/FCOE-Official-Notice-Eng-Final-8.30.2024.pdf) .
Requirements
This is a Senior Software Engineer role in Bank of America Authentication Technology team , responsible for identity and access management for all channels - mobile, desktop, IVR, contact center etc., We are looking for a strong hands-on engineering talent to help deliver several key priorities including migrating to cloud and containers. Candidate should have prior experience building high volume authentication systems with command over all layers of the stack. Team owns the full stack from front end, services, databases, and reporting. This individual must have passion for clean code, producing defect free software, ready to jump in and solve complex problems, perform code reviews., + 7+ years of hands-on software development, experienced in at least one statically typed language (i.e. - Java or C++) and one dynamically typed language (i.e. - Groovy or Python)
-
5+ years of leading, mentoring other engineers
-
5+ years of building high volume web applications
-
Bachelor's degree in computer science or related field
-
Building and deploying applications in cloud and containers
-
Secure coding and best practices
-
Excellent interpersonal communication skills for tech and business conversations
Desired Qualifications:
-
Experience in Identify and Access Management, server-side frameworks like Spring MVC, building restful web services
-
Ability in multiple JVM languages, performance tuning with good understanding of JVM internals
-
Experience with NoSQL databases like Cassandra and using distributed caching frameworks
-
Background in mathematics or statistics
-
Agile team process experience
-
Open-source contributions
Skills:
-
Automation
-
Influence
-
Result Orientation
-
Stakeholder Management
-
Technical Strategy Development
-
Application Development
-
Architecture
-
Business Acumen
-
Risk Management
-
Solution Design
-
Agile Practices
-
Analytical Thinking