Do you want to build computer vision, deep learning and machine learning systems at scale to solve document understanding? Come join the world class researchers, academics and research engineers in the AWS Computer Vision research team who are developing the science that power Amazon Textract!
AWS, the world-leading provider of cloud services, has fostered the creation and growth of countless new businesses, and is a positive force for good. Our customers bring problems that will give Research Engineers like you endless opportunities to see your work have a positive and immediate impact in the world. You will have the opportunity to partner with technology and business teams to solve real-world problems, have access to virtually endless data and computational resources, and to world-class researchers and developers. As part of the team, we expect that you will help build innovative solutions to hard problems, and deploy them at AWS scale. You will also have an opportunity to publish at peer reviewed conferences and workshops.
Our research themes include, but are not limited to: unsupervised, self-supervised and semi-supervised methods, active learning and semi-automated data annotation, document OCR and scene text recognition, visual question answering (VQA), document VQA, NLP+vision, extracting tabular data from documents, document understanding, and layout understanding.
A research engineer in AWS Computer Vision research team has the following responsibilities:
- Design and build reference architectures, or train/optimize models that enable science experimentation on complex problems with unknown definition and solution pipelines
- Design and guide the science team's implementation, enabling Science POC that help decide the ultimate science solution strategy, algorithm workflow, and the individual science components that become a release candidate
- Drive best practices in team [code, packaging, compute, deliveries]. Advise and drive implementation for research projects and act as a bridge between science and engineering for eventual productization of new algorithms
- Handle and implement research code for training and evaluation, apply and adapt known science methods
Here at AWS, we embrace our differences. We are committed to furthering our culture of inclusion. We have ten employee-led affinity groups, reaching 40,000 employees in over 190 chapters globally. We have innovative benefit offerings, and host annual and ongoing learning experiences, including our Conversations on Race and Ethnicity (CORE) and AmazeCon (gender diversity) conferences.
Our team puts a high value on work-life balance. It isn't about how many hours you spend at home or at work; it's about the flow you establish that brings energy to both parts of your life. We believe striking the right balance between your personal and professional life is critical to life-long happiness and fulfillment. We offer flexibility in working hours and encourage you to find your own balance between your work and personal lives.
Mentorship & Career Growth
Our team is dedicated to supporting new members. We have a broad mix of experience levels and tenures, and we're building an environment that celebrates knowledge sharing and mentorship. Our senior members enjoy one-on-one mentoring and thorough, but kind, code reviews. We care about your career growth and strive to assign projects based on what will help each team member develop into a better-rounded engineer and enable them to take on more complex tasks in the future.
- 2+ years of non-internship professional software development experience
- Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
- 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
- BSc or MSc Degree in Computer Science, EE or related field
- Excellent knowledge of software engineering.
- Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
- Proficiency in, at least, one modern programming language such as Python, C++, Objective C, or Java
- Excellent written and oral communication skills in English.
- Experience building complex software systems that have been successfully delivered to customers, especially involving deep learning, machine learning and computer vision
- 3+ years of work experience developing and commercializing computer vision or deep learning
- Ability to take a project from scoping requirements through actual launch of the project
- Experience in communicating with users, other technical teams, and management to collect requirements, describe software product features, and technical designs
- Comfortable challenging assumptions and thinking of creative ways to tackle problems
- Experience with deep learning libraries such as PyTorch, TensorFlow, MxNet
- Research publications in computer vision, deep learning or machine learning at peer-reviewed workshops, conferences or journals