Software Engineer II (AI/ML)
About the Role
This position is part of Bank of America's Erica, Chat, and Voice Technology organization, the team behind one of the bank's most strategic and visible AI-powered platforms. Erica serves millions of clients across digital channels and is at the forefront of transforming how customers interact with Bank of America through conversational AI, intelligent search, personalized insights, and virtual assistance.
As part of the Erica engineering team, you will help build the next generation of AI-driven experiences, leveraging cutting-edge technologies including Generative AI, Large Language Models (LLMs), Retrieval-Augmented Generation (RAG), intelligent search, agent-based architectures, and enterprise-scale AI platforms. This role provides a unique opportunity to work on high-impact initiatives that directly influence client engagement, digital adoption, and the future of AI-powered banking.
The candidate will design, develop, test, and support scalable software platforms and AI-powered applications that enable the future of conversational banking and personalized client experiences. The role combines strong software engineering fundamentals with modern AI application development, offering hands-on experience building enterprise solutions powered by Generative AI, LLMs, intelligent search, and machine learning technologies.
Responsibilities
- Code solutions and unit test to deliver a requirement/story per the defined acceptance criteria and compliance requirements.
- Design, develop, and modify architecture components, application interfaces, and solution enablers while ensuring principal architecture integrity is maintained.
- Mentor other software engineers and coach the team on Continuous Integration and Continuous Development (CI-CD) practices and automating tool stack.
- Execute story refinement, definition of requirements, and estimating work necessary to realize a story through the delivery lifecycle.
- Perform spike/proof of concept as necessary to mitigate risk or implement new ideas.
- Automate manual release activities.
- Design, develop, and maintain automated test suites (integration, regression, performance).
- Implement high-quality code following enterprise standards, architecture patterns, and engineering best practices.
- Participate in solution design discussions and contribute to technical implementation decisions.
- Develop and integrate AI/ML-powered capabilities into enterprise applications.
- Support implementation of Generative AI and Retrieval Augmented Generation (RAG) solutions.
- Develop and maintain RESTful APIs, microservices, and backend services.
- Perform code reviews and contribute to continuous improvement of engineering practices.
- Troubleshoot, debug, and resolve application and production issues.
- Ensure solutions meet security, performance, scalability, and reliability requirements.
- Collaborate with product owners, architects, and engineering teams to deliver business requirements.
- Support deployment, monitoring, and optimization of applications across enterprise environments.
- Participate in Agile ceremonies including sprint planning, estimation, and retrospectives.
Requirements
- 1+ years of software development experience using Java, Python, or related technologies.
- Strong object-oriented programming and software design skills.
- Experience building enterprise applications and RESTful web services.
- Knowledge of AI/ML concepts and experience developing AI-enabled applications.
- Familiarity with Large Language Models (LLMs), Generative AI, and modern AI frameworks.
- Experience implementing Retrieval Augmented Generation (RAG) solutions and retrieval techniques.
- Experience working with source control tools such as Git.
- Strong analytical and problem-solving skills.
- Good verbal and written communication skills.
- Experience working in Agile development environments.
Qualifications (Preferred)
- Experience with Elasticsearch, OpenSearch, SOLR, or similar search platforms.
- Experience with AI/ML frameworks and model integration.
- Experience with vector databases, embeddings, and semantic search.
- Experience with Kubernetes, Docker, and containerized deployments.
- Experience with cloud platforms such as Azure or AWS.
- Experience with Cassandra, Redis, or other distributed data technologies.
- Understanding of MLOps, model deployment, monitoring, and observability concepts.
- Experience with chatbot, conversational AI, or virtual assistant platforms.
- Experience with prompt engineering and model evaluation techniques.
- Experience with GPU-based AI workloads and inference platforms.
Skills
- Application Development
- Automation
- Influence
- Solution Design
- Technical Strategy Development
- Architecture
- Business Acumen
- DevOps Practices
- Result Orientation
- Solution Delivery Process
- Analytical Thinking
- Collaboration
- Data Management
- Risk Management
- Test Engineering
Education
Bachelor's or Master's Degree in Computer Science, Engineering, Information Systems, or a related field or equivalent experience.
Schedule
1st shift (United States of America), 40 hours per week.