AI Engineer - London - Perm
McCabe & Barton
2021-12-03 08:57:56
Barkingside, Greater London, United Kingdom
Job type: fulltime
Job industry: I.T. & Communications
Job Contact: James Lowe
Job description
An exciting start-up harnessing the power of AI to solve the pervasive problem of processing unstructured communications. We provide a modern cloud-native Software as a Service (SaaS) solution with an initial focus on enterprise financial services, but quickly expanding to cover other industries and ultimately to small businesses with a Freemium product. Our founders, investors and leadership team have an impressive track record, building successful businesses, delivering enterprise level systems, and developing market leading products - we have the background and skills to address business problems in a unique and practical way.
We offer an outstanding opportunity to join an innovative company with the opportunity and excitement of an early-stage start-up but with the security of significant financial backing, blue chip current clients and a rapidly growing sales pipeline.
Job Title
AI Engineer/Data Scientist with specialisation in Natural Language Processing
Job Summary
You will work on building a scalable distributed component-based AI platform including - advanced natural language processing, configurable workflows, flexible APIs, business intelligence, sophisticated monitoring, self-healing operation and powerful feature rich UIs. You will build sophisticated omni-channel AI components including - natural language processing, transformers, neural nets, OCR, voice transcription, pattern recognition, proprietary domain model training and management. The team operates with an ultra-flat structure and encourages everyone to contribute to all aspects of business and product development.
Role Description
We are seeking to hire an experienced, professional, and enthusiastic AI Engineer with a specialisation in Natural Language Processing to help us build our AI Software as a Service ( SaaS) product.
To succeed in this role, you should possess outstanding skills in statistical analysis, machine learning methods and text representation techniques as well as an appreciation of the in the field and commercial considerations.
The role responsibilities include to:
- Assist with providing expertise in the Sales, PoC and engagement phases of projects
- Develop the ontology and knowledge graphs for implementations
- Use effective text representations to transform natural language into useful features
- Find and implement the right algorithms and tools for NLP tasks
- Develop NLP systems according to product/client requirements
- Train the developed model and run evaluation experiments for client engagements
- Design and build a natural language processing infrastructure
- Create natural language processing pipelines to prepare data to feed to the classification and extraction algorithms
- Select and configure the appropriate neural net models to be trained for specific use cases
- Develop a library of components and business domain models that can be utilised across many clients
- Develop quantitative tools to measure model efficiency for use for PoC and live client engagements
- Build and maintain machine learning pipelines (currently in AWS Sagemaker)
- Implement model version control, training, evaluation, and optimisation tools
- Build the AI application components to a standard suitable for critical production processes
- Assisting in the deployment and support of AI models in the field ensuring that they are performing optimally
- Keep abreast of academic research to ensure that our product remains appropriately cutting edge
You will join a small team of 3 to 4 like-minded developers to translate product strategy and requirements into suitable, maintainable and scalable solutions.
You are a T-shaped team-member with the responsibility for taking a product feature all the way from concept to production with testing and DevOps being integral part of day-to-day work. You will be flexible and able to adapt to changes in priorities as necessary. You will be self-motivated, and results oriented with a very strong attention to detail and quality.
Your self-drive, pro-activeness and ability to lead, communicate and take initiative will be crucial to succeed in this role.
Furthermore, you will:
- Work with professional software engineering practices and set best practices for the full software development life cycle
- Collaborate closely with team members and product owners to share best practice as well as discuss and motivate design solutions
- Develop with a test-driven approach and employ well established design and architecture principles
- Write functional and integration test suites
- Contribute to performance and failure testing
- Drive and participate in the team's agile practices
- Take part in continuous improvement of the development process
Required Skills
- Proven experience as an NLP Engineer or similar role
- Understanding of NLP techniques for text representation, text classification, semantic extraction techniques, data structures and modelling
- Deep understanding of text representation techniques (such as n-grams, bag of words, transformers etc), statistics and classification algorithms
- Proficient in Python
- Previous experience in building machine learning APIs
- Ability to write robust and testable code
- Experience with regular expressions
- Experience with machine learning frameworks (such as Keras or PyTorch) and libraries (such as scikit-learn, Spacy, Pandas, Numpy, Scipy)
- An analytical mind with problem-solving abilities
- Strong communication skills
Desirable Skills
- Ability to effectively design software architecture
- Familiarity with Docker
- Language - JavaScript, NodeJS, Typescript
- Framework - NestJS/Express/Microservices
- Testing - Jest/Mocha/Cypress/React testing Library
- API - OpenAPI/GraphQL/GRPC
- Data Storage - MongoDB/Mongoose
- Build Tools - Nx Dev/Yarn/npm
- Platform - Docker/Nginx
- AWS/GCP - API Gateway/Lambda
- Orchestration Stack - Kubernetes/Nomad