Senior Software Engineer
UCLA Health · Los Angeles, CA
You can provide the tools necessary to deliver cutting-edge health care and groundbreaking research. As part of our Information Technology team, you’ll ensure that our medical professionals have access to the latest breakthroughs in technology, and you’ll play a key role in protecting our global patient community.
We are hiring for three (3) Senior Software Engineers.
The newly formed Cancer Data Sciences group at the UCLA David Geffen School of Medicine and UCLA Jonsson Comprehensive Cancer Center is seeking a Senior Software Engineer with broad research and development experience to help us perform research that will transform the lives of cancer patients.
You will work with a broad team of Data Scientists, developing new quantitative strategies to improve our understanding and ability to treat cancer. You are passionate about applying your knowledge of software-development and design to improve scientific research. In this role, you will develop scalable and distributed software solutions that maximize utilization of both local high-performance computer infrastructure and a growing set of cloud-based assets. Our datasets comprise hundreds of terrabytes, and are growing rapidly, creating fascinating problems in storage, access, parallelization, distributability, optimization, containerization and core algorithm design.
Your responsibilities will be broad, and include an emphasis on using design, analysis and programming skills to create systems that improve code quality and boost productivity of the entire team. You will help drive professional-level design and development practices throughout the entire team, and serve as a local point of expertise for workflow optimization and containerization. You will typically have one or two major and several minor projects at any point in time, making appropriate prioritization, time-management and reporting across these.
We are in a rapid growth-phase, and the successful candidate will be involved in hiring, recruiting and mentoring junior data scientists and programmers.
- Experience with the full software development process including gathering requirements, turning them into a design, implementing the design, and validating the implementation against the original requirements
- Detailed working knowledge of C++, Perl or Python programming/scripting design
- Working knowledge of software development tools and CASE tools
- Knowledge of LINUX/Unix operating system, and source-code versioning systems
- Strong computer science knowledge, including software design patterns
- Preferred: knowledge of SQL and data modeling; working knowledge of containerization (e.g. Docker, Singularity); experience developing R-based code; experience with machine-learning, bioinformatics and cancer or molecular biology; knowledge of relational database software (e.g. Oracle, Postgres); familiarity with distributed programming; and understanding of core LAN networking protocols including ethernet, IP, TCP, UDP, ICMP