Senior Software Engineer, Machine Learning

Company: Illumina
Company: Illumina
Location: Singapore - Woodlands - NorthCoast
Commitment: Full time
Posted on: 2023-10-28 19:01
What if the work you did every day could impact the lives of people you know? Or all of humanity?At Illumina, we are expanding access to genomic technology to realize health equity for billions of people around the world. Our efforts enable life-changing discoveries that are transforming human health through the early detection and diagnosis of diseases and new treatment options for patients.Working at Illumina means being part of something bigger than yourself. Every person, in every role, has the opportunity to make a difference. Surrounded by extraordinary people, inspiring leaders, and world changing projects, you will do more and become more than you ever thought possible.Our team develops Next Generation Sequencing (NGS) solutions used by researchers and clinicians worldwide, providing sample-to-answer pipelines with high reliability, speed, and accuracy of results.  We develop machine learning solutions across Illumina’s portfolio, from sequencing functions to analysis and interpretation algorithms. DRAGEN, our secondary analysis platform, has industry leading performance and is used for clinical and research work. We also develop algorithms for on-sequencer pipelines including super-resolution, basecalling, denoising. Advanced AI applications drive transformational genetic insights that improve understanding of human biology, cancer and rare disease.We are seeking an ML Algorithms and Software engineer to join our team. This role will develop and implement ML systems across Illumina’s products, including DRAGEN and high-throughput sequencing systems like Novaseq X, the highest throughput sequencer in the industry. You will collaborate with cross-functional teams (algorithms, implementation, bioinformatics, optics and imaging, test) to implement machine learning algorithms operating on a variety of data types (images, sequencing output, population data, DNA, RNA, multi-omics, etc). If you have programming experience and a passion for machine learning, this is a great opportunity to join an exciting team at a leading biotech company.Responsibilities:You will develop machine learning algorithms in Python and implement them in C++ (also potentially FPGA, GPU/CUDA)Create and maintain Python and C++ code, documentation, unit tests Working closely with other software engineers, researchers and domain experts on AI/ML models and pipelines; develop and implement machine learning models in C++ using librariesWork with experts across software engineering, hardware engineering, ML and data science, optics and imaging, precision motion, embedded systems, testDesign, develop, test, deploy, maintain software solutions (on sequencer, on DRAGEN servers, in the cloud)Deliver high quality documentation and test casesDebug and troubleshoot ML modelsAll listed tasks and responsibilities are deemed as essential functions to this position; however, business conditions may require reasonable accommodations for additional tasks and responsibilities.Qualifications:Bachelors or Masters in Computer Science or a related technical field, or equivalent experience2+ years of relevant experience in software implementation, ideally in C++Experience in algorithms and data structures, numerical optimization, parallel and distributed computing, high-performance computing, embedded systems, machine learningIdeally experience with ML frameworks (Tensorflow, keras, Pytorch, xgboost, sklearn)Solid Python coding skills – experience with unit testing, code reviews, version controlSelf-starter, good problem-solving skills, ability to push forward project objectives both through individual effort and team collaborationAll listed requirements are deemed as essential functions to this position; however, business conditions may require reasonable accommodations for additional tasks and responsibilities.Additional Nice-to-Haves:Bioinformatics, ML, software engineering principles, software test, applied math background and/or experienceDeep learning, structured data machine learning, gradient boosting, linear algebra and statistics applied to images, tabular data, unstructured multimodal dataNGS knowledge - familiarity with bioinformatics workflows including primary and/or secondary analysis pipelinesExperience with ML frameworks such as Pytorch, Keras, xgboost, sklearn, ONNX, dask, rapids.aiExperience with revision control (git)Experience with ML acceleration technology (FPGA, GPU, etc) and technology infrastructureStrong Linux/Unix fundamentalsStrong documentation and presentation skillsMachine learning experience/knowledgeDegree and Job Experience Requirements:The candidate could have a degree from any of the following fields:  Bioinformatics, Biology, Physics, Electrical Engineering, Computer Science, Software Engineering, Applied Math, related topicsBachelor’s, Master’s, or Ph.D.Job experience: the role can be morphed to accommodate candidates from recent graduates to experienced professionalsIllumina believes that everyone has the ability to make an impact, and we are proud to be an equal opportunity employer committed to providing employment opportunity regardless of sex, race, creed, color, gender, religion, marital status, domestic partner status, age, national origin or ancestry, physical or mental disability, medical condition, sexual orientation, pregnancy, military or veteran status, citizenship status, and genetic information.
View Original Job Posting