Royal Bank America
Software Engineer III
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Инженер-разработчик в команду Legal AI банка Bank of America. Создание AI-решений для юридического департамента: сервисы на Python, обработка документов, RAG-пайплайны, интеграции с AI-платформами и чат-бот Ask Legal.
Задачи
- Проектировать, разрабатывать, тестировать, разворачивать и поддерживать приложения, сервисы и API на Python для Legal AI
- Создавать RESTful-сервисы на FastAPI с валидацией запросов, обработкой исключений, аутентификацией, логированием и документацией API
- Разрабатывать загрузку и обработку документов форматов PDF, Microsoft Office, текстовых, email и других структурированных и неструктурированных данных
- Подбирать Python-библиотеки для извлечения текста, парсинга, извлечения метаданных, нормализации контента и извлечения таблиц
- Реализовывать AI-суммаризацию документов, question answering, извлечение информации, классификацию и диалоговые сценарии
- Развивать возможности чат-бота Ask Legal для поиска и взаимодействия с утверждёнными юридическими источниками знаний
- Интегрировать внутренние приложения с AI-платформами вендоров через Python API, SDK, веб-сервисы и Model Context Protocol
- Строить и поддерживать AI-оркестрацию на LangChain, LangGraph или аналогичных одобренных технологиях
- Разрабатывать инструменты, функции, промпты, управление состоянием, маршрутизацию и многошаговые workflow для AI-агентов
- Поддерживать внедрение AI-агентов на Microsoft Copilot Studio и других корпоративных AI-платформах
- Участвовать в построении RAG-пайплайнов: ingestion, парсинг, чанкинг, обогащение метаданными, эмбеддинги, индексация, retrieval, реранкинг, сборка промптов и grounding ответов
- Разрабатывать поиск и retrieval на Elasticsearch, включая keyword, metadata и семантический/векторный поиск
- Работать с реляционными, документными, векторными и графовыми базами данных по требованиям решения
- Применять практики безопасной разработки: валидация ввода, контроль доступа, управление секретами, защита данных, аудит-логирование, управление зависимостями и устранение уязвимостей
- Разрабатывать автоматические unit, integration, API и regression тесты
- Участвовать в code review, обсуждениях дизайна, техническом troubleshooting и улучшении практик разработки
- Взаимодействовать с юридическими стейкхолдерами, продакт-менеджерами, архитекторами, платформенными командами, кибербезопасностью и риск-партнёрами
- Расследовать инциденты в production и non-production на уровнях приложения, API, интеграций, данных, поиска и AI-оркестрации
- Создавать и поддерживать техническую документацию: спецификации API, дизайн реализации, процедуры поддержки, потоки данных и runbook'и
- Проводить proof of concept и технические исследования новых библиотек, фреймворков, AI-паттернов и подходов к интеграции
- Делиться техническими знаниями с командой и создавать переиспользуемые компоненты и паттерны
Требования
- Сильный практический опыт разработки enterprise-приложений и сервисов на Python
- Опыт проектирования и реализации RESTful API на FastAPI, Flask, Django или аналогичных Python-фреймворках (FastAPI предпочтительно)
- Сильное понимание ООП, модульного дизайна приложений, обработки исключений, управления зависимостями и переиспользуемых компонентов
- Опыт обработки PDF и других неструктурированных форматов с помощью Python-библиотек и фреймворков извлечения контента
- Опыт работы с библиотеками обработки документов: PyMuPDF, pypdf, pdfplumber, Apache Tika, Unstructured, python-docx или аналогами
- Опыт интеграции приложений с внутренними и внешними платформами через REST API, SDK, механизмы аутентификации и JSON
- Опыт разработки автоматических unit и integration тестов с pytest или аналогичными фреймворками
- Рабочее знание реляционных и нереляционных баз данных и умение проектировать паттерны доступа к данным
- Понимание практик безопасной разработки API и приложений: аутентификация, авторизация, валидация ввода, защита секретов, управление уязвимостями зависимостей
- Опыт работы с Git и автоматизированными пайплайнами сборки, тестирования и деплоя
- Умение диагностировать и решать сложные технические проблемы на уровнях приложения, API, данных и интеграций
- Сильные аналитические навыки и умение принимать прагматичные инженерные решения
- Сильные навыки письменной и устной коммуникации, умение объяснять технические концепции инженерам и неинженерам
- Опыт совместной работы в Agile-команде
- Интеллектуальная любознательность и желание изучать новые технологии, фреймворки, паттерны интеграции и AI-инженерию
Условия
- Офисная культура с чёткими ожиданиями по присутствию и гибкостью в зависимости от роли и бизнес-задач
- Конкурентные и гибкие льготы, поддержка физического, эмоционального и финансового благополучия
- Инклюзивная рабочая среда и возможности для карьерного роста
- Полная занятость, 40 часов в неделю, 1-я смена (США)
Навыки
- Python
- FastAPI
- Flask
- Django
- REST API
- PyMuPDF
- pypdf
- pdfplumber
- Apache Tika
- Unstructured
- python-docx
- pytest
- Git
- LangChain
- LangGraph
- Semantic Kernel
- RAG
- Elasticsearch
- Vector databases
- Embeddings
- Neo4j
- Model Context Protocol
- Microsoft Copilot Studio
- Angular
- TypeScript
- Docker
- Kubernetes
- OCR
- JSON
- SQL
- NoSQL
- Agile