Senior Engineer - Java

Bank of AmericaCharlotte, NC
9dOnsite

About The Position

At Bank of America, we are guided by a common purpose to help make financial lives better through the power of every connection. We do this by driving Responsible Growth and delivering for our clients, teammates, communities and shareholders every day. Being a Great Place to Work is core to how we drive Responsible Growth. This includes our commitment to being an inclusive workplace, attracting and developing exceptional talent, supporting our teammates’ physical, emotional, and financial wellness, recognizing and rewarding performance, and how we make an impact in the communities we serve. Bank of America is committed to an in-office culture with specific requirements for office-based attendance and which allows for an appropriate level of flexibility for our teammates and businesses based on role-specific considerations. At Bank of America, you can build a successful career with opportunities to learn, grow, and make an impact. Join us! 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. This is a software development position in Bank of America’s Erica, Chat, and Voice Technology organization. The Team builds next generation AI and Search platforms to enable virtual financial assistant and search capabilities across multiple channels. We are seeking a highly skilled and experienced Senior Software Engineer to join our dynamic technology team. The ideal candidate will have a strong background in Java development and cloud-native architectures. This role is critical to driving innovation and delivering scalable, high-performance solutions that support our strategic AI initiatives.

Requirements

  • 7+ years of professional experience in Java development.
  • Strong understanding of object-oriented programming, design patterns, and software architecture.
  • Experience with Spring Framework (Spring Boot, Spring MVC), Microservices.
  • Familiarity with containerization (Docker, Kubernetes).
  • Excellent problem-solving skills and ability to work independently and collaboratively.

Nice To Haves

  • Full Stack Developer with Proficiency in front-end technologies such as HTML5, CSS3, JavaScript, and frameworks like React or Angular.
  • Experience with relational and NoSQL databases (e.g., Cassandra).
  • Exposure to Agile development methodologies.
  • Experience with performance tuning and application monitoring tools.
  • Experience with open source search engines like SOLR, Redis
  • Knowledge of NLP and AI Technologies
  • Skills: Automation Influence Result Orientation Stakeholder Management Technical Strategy Development Application Development Architecture Business Acumen Risk Management Solution Design Agile Practices Analytical Thinking Collaboration Data Management Solution Delivery Process

Responsibilities

  • 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.
  • Design, develop, and maintain robust, scalable, and secure Java-based applications.
  • Collaborate with cross-functional teams to define and design/architect application solutions.
  • Lead technical discussions and mentor junior developers.
  • Implement RESTful APIs and integrate with backend services.
  • Ensure code quality through unit testing, code reviews, and continuous integration.
  • Optimize application performance and scalability.
  • Stay current with emerging technologies and industry trends to drive innovation.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service