What are the responsibilities and job description for the NLP/NLU Developer position at Cyma Systems Inc?
Job Details
Title: NLP/NLU Developer
CA
Exp range: 5-9 years of experience
Onsite role.
QUALIFICATIONS AND DUTIES
1) Design and develop NLU application (chatbot) using Lex. Design Conversational
Flow: Create a flowchart or diagram outlining the chatbot s conversation paths,
responses, and possible user inputs.
2) Develop Natural Language Processing (NLP) Capabilities: Implement NLP models to
enable the chatbot to understand and process user inputs effectively. Create intents
and define slot types based on the application requirement. Set up how the lex bot
conversation should flow and error handling. Use Lex's dialog management system
to specify prompts for each slot and determine fallback responses. Use Lambda
functions for dynamic responses or backend logic.
3) Thoroughly test the bot to ensure it responds accurately, handles edge cases, and
performs smoothly in various situations. Use the built-in testing interface in the AWS
Lex console to simulate conversations. Implement monitoring using Amazon
CloudWatch to track bot performance and errors. Adjust intents, prompts, and
Lambda functions as needed based on user feedback.
4) Use APIs to interact with different LLMs. Understand various LLMs available on
Amazon Bedrock and how to invoke them efficiently and cost-optimized using
customized completion prompts.
5) Use various AWS technologies like API G/W, Lambda, S3, CloudFormation scripts,
CloudWatch, etc to create a complete solution that can be monitored, optimized, and
updated with automation tools.
6) Write and Optimize Python Code. Develop clean, readable, and efficient Python code
to solve problems or build applications. Continuously refactor code for readability
and performance. Use libraries like collections, langchain, and built-in functions to
optimize code.
7) Develop services using SOA and interact with APIs to send or receive data from
external systems or services using libraries to make GET, POST, PUT, and DELETE
requests. Create and process JSON requests and responses and manage authentication
(like OAuth tokens or API keys).
8) Manage project dependencies and keep environments isolated for each project. Create
application packages and docker images that can be deployed in a cloud
infrastructure. Ensure all dependencies are packaged and use venv or virtualenv to
create isolated Python environments for different projects.
9) Ensure code quality by writing tests and debugging issues that arise. Conduct
thorough testing, including unit testing and user acceptance testing (UAT), to ensure
the chatbot functions as expected and fix any bugs.
10) Use database concepts to write and create SQL queries to extract data from database.
References Format:
Provide three (3) references of current and/or past project experiences of the proposed resource as listed in the Statement of Work. The reference information must include the following information:
i. Project Size
ii. Project scope including specific services provided.
iii. Period of Performance
iv. Contact information including name of the organization, contact person, phone number and email.