Gen AI developer(10+years of experience)
Role: Gen AI developer Location: Remote, it will be nice to have local to St Louis... Open on both w2 and c2c. Skills for a Generative AI Developer Communication and Collaboration Skills
- Ability to communicate and collaborate with other programmers, researchers, or stakeholders, and be able to explain the technical details, challenges, and results of their generative AI projects.
- Ability to work in a highly dynamic fast paced environment were priorities can change frequently. Architecture and Design Skills
- Should have a strong background in computer science, mathematics, and statistics, as well as a solid understanding of the principles and techniques of machine learning and deep learning.
- Should be proficient in programming languages, such as Python, and relative frameworks that are commonly used for developing and deploying generative AI models.
- Should be familiar with the state-of-the-art research and developments in generative AI, such as the latest models, architectures, algorithms, and datasets.
- Ability to take an idea from conception to delivery, working with team members to ideate creative, low-cost, iterative solutions to requested features and defects. Python Knowledge
- Core Python Concepts
- Proficiency in Python syntax and semantics
- Understanding of data types, variables, and operators
- Mastery of control structures (if statements, loops)
- Knowledge of functions, lambdas, and higher-order functions
- Familiarity with modules and packages
- Object-Oriented Programming (OOP)
- Understanding of classes, objects, inheritance, polymorphism, and encapsulation
- Ability to design and implement class hierarchies
- Error Handling and Exceptions
- Understanding of exception handling using try, except, finally blocks
- Ability to create custom exceptions
- File I/O
- Reading from and writing to files
- Working with different file formats (e.g., CSV, JSON) FastAPI Knowledge
- API Development
- Building RESTful APIs using FastAPI
- Creating and handling endpoints (GET, POST, PUT, DELETE)
- Request Validation and Serialization
- Using Pydantic models for data validation and serialization
- Implementing request and response models
- Dependency Injection
- Understanding FastAPI's dependency injection system
- Creating and using dependencies
- Asynchronous Programming
- Writing asynchronous endpoints with async/await
- Understanding the event loop and concurrency
- Middleware and CORS
- Creating and using middleware
- Configuring Cross-Origin Resource Sharing (CORS) LangChain Knowledge
- Integrating Language Models
- Understanding the purpose and functionality of LangChain
- Building applications that integrate language models with various tools and data sources
- Chain Management
- Creating and managing chains of tools and models
- Implementing complex workflows using LangChain
- Tool Executors
- Understanding the concept of Executors in LangChain
- Designing use cases that benefit from Executors AWS Knowledge
- Serverless Architecture
- Understanding the principles of serverless computing
- Designing and deploying AWS Lambda functions
- Event-Driven Programming
- Creating and managing event sources for Lambda functions (e.g., S3, DynamoDB, API Gateway)
- Handling events and triggers
- Lambda Configuration and Deployment
- Setting up Lambda execution roles and permissions
- Deploying Lambda functions using AWS Management Console, CLI, and infrastructure as code (e.g., AWS CloudFormation, Terraform) OAuth2 Flows Knowledge
- OAuth2 Fundamentals
- Understanding the OAuth2 authorization framework
- Familiarity with key concepts: access tokens, refresh tokens, scopes
- OAuth2 Flows
- Knowledge of different OAuth2 flows: Authorization Code Flow, Client Credentials Flow, Implicit Flow, and Resource Owner Password Credentials Flow
- Implementing OAuth2 authentication and authorization in applications
- Token Management
- Handling token generation, storage, and validation
- Implementing token refresh mechanisms Additional Skills
- Version Control & CI/CD
- Proficiency with Git and version control practices
- Understanding and abilities to use Jenkins for CI/CD pipelines
- Testing and Debugging
- Writing unit tests and integration tests
- Using testing frameworks (e.g., pytest)
- Debugging techniques and tools
- Documentation
- Writing clear and comprehensive documentation
- Using tools like Swagger/OpenAPI for API documentation
- Collaboration Tools
- Experience with collaboration tools (e.g., JIRA, Confluence Apply Job!
Apply tot his job Apply To this Job