About the Role
The Conversational Assistants team brings together Uber's products, state-of-the-art cognitive technologies and Uber's engineering infrastructure to deliver automated conversational assistants a.k.a chatbots to provide enhanced customer experience. Our chatbots are capable of interacting with customers, performing cognitive analysis of customer interactions in real time and responding and interacting automatically with the customers. Our automated assistants are built on dialogue management frameworks, Uber's support logic, natural language understanding models and customer communication data to deliver an automated support experience that reduces burden on human agents and provides faster responses to customers. We constantly thrive on providing the next generation of customer assistants, which are a result of Uber's big, bold bets. As a result, we are building the next generation of chatbots leveraging GenAI models to provide more personalised, empathetic, human-like conversations that are also compliant with Uber's business policies .
- What the Candidate Will Do -
We are seeking a strong and passionate software engineer with experience in building chatbots. You will be responsible for creating scalable, reliable, and manageable chatbots that deliver on conversational requirements at Uber by bringing together LLM prompts and Assistant building platforms at Uber. You will be owning customer-facing chatbots that impact the support experience of millions of customers. You will also be leading the NLP based chatbot to GenAI based chatbot migrations as well as augmenting the existing GenAI chatbots with new features and capabilities. Your responsibility will include identifying required changes across Uber's engineering ecosystem, collaborating with engineering teams, driving consensus, and implementing extensible, maintainable changes required to build state-of-the-art support experiences.
We are looking for someone who has a passion for designing and driving large projects from inception to production. The right person will work with stakeholders, product managers, scientists, and partner engineering teams to gather requirements and translate them into a platform feature. Must be a great communicator, team player, and a technical powerhouse.
- Basic Qualifications -
-
5+ years of experience in software development.
-
Experience with:
-
Scalable system architecture design
-
Production-quality services, deployment, monitoring, and reliability.
-
Microservice designs, gRPC or REST API development
-
Ability to decompose complex business problems into clean, extensible, performant services and systems
-
Logging, monitoring, performance troubleshooting and tuning experience
-
Excellent problem-solving skills and the ability to work in a collaborative team environment
-
Comfortable in navigating multi-disciplinary teams with respect
-
Focus on code quality in terms of coverage, code reviews
-
Excellent technical writing skills to communicate design, requirements, flows, and architecture
-
Fluent in one of these programming languages: Golang, Scala, Java,
-
Comfortable in one of these scripting languages: JavaScript, Python
-
Solid understanding of algorithms, data structures, and software design principles.
-
Experience with version control systems such as Git.
- Preferred Qualifications -
-
Experience in machine learning, GenAI, or LLM technologies.
-
Experience with building conversational assistants
-
Dialogue management systems like Google Dialogflow, Amazon Alexa
-
Familiarity with large-scale distributed systems like Kafka and cloud platforms like AWS, GCP, or Azure.
-
Familiarity with communication channel interfaces eg, WhatsApp, SMS, Slack