Senior Research Programmer
Please apply here: https://cmu.wd5.myworkdayjobs.com/CMU/job/Pittsburgh-PA/Senior-Research-Programmer---Parallel-Data-Lab--POL---SCS_2016944
The Parallel Data Lab (PDL) at Carnegie Mellon University is an interdisciplinary research organization that studies a wide range of topics in the computing systems space. This work includes research in systems for ML including MLOps, benchmarking, scheduling, virtualization, profiling, automation, and other related topics. The Parallel Data Lab is a tightly-knit team of faculty, staff, and students that work and support each other in a fast-paced, results-oriented fashion. The team adopts agile cloud-native development principles to develop private and public cloud-hosted microservices as part of our research testbed. We closely collaborate with leading technology product groups at Microsoft Azure, Amazon Web Services, and Google Cloud Platform, among others.In consultation with faculty member/Pl, the candidate develops, modifies, and maintains complex programs in computer systems. May design and develop software, applications, or modify existing software packages to meet specific research needs. Self-direction and the ability to find effective solutions to irregular and unforeseen problems. The ability to work with the latest open-source packages and emerging cloud services. Understanding the needs of the teams using various research testbeds and computing systems, and developing services to meet those needs. Participate in relevant research discussions bridging research requirements and software solutions. Also attends required meetings and participates in any necessary training to maintain or upgrade skills. Must be a team player, able to work well with faculty, staff, and students in their exploration of systems science; capable of coping with long hours and stress during deadlines; and be eager to facilitate student use and learning of our systems.
Core responsibilities will include:
- Lead the design, development, benchmarking, and maintenance of sophisticated software and data pipelines on private and public clouds.
- Support the research team with various technical challenges.
- Build and maintain the research team's codebase repository and author and refine relevant documentation.
- Build and manage the datasets utilized in research studies.
- Onboard students to our research software stack and testbeds.
- Participate in the design and execution of various research experiments.
Qualifications:
Bachelor's Degree in Computer Science or related technical discipline or equivalent work experience required.
Minimum of 3 years of experience with modern object-oriented programming languages such as Java, Python, and Scala required.
2 years of work experience with web service development frameworks such as Spring Boot, flask.
Experience with SOL and NoSQL databases, preferably MySQL and MongoDB.
Experience with batch processing frameworks such as Hadoop or Spark.
Experience with managed data storage and data processing solutions on CSPs such as Microsoft Azure, AWS or Google Cloud Platform.
Experience building, deploying, monitoring and troubleshooting containerized microservices using Docker and Kubernetes.
Demonstrated experience of test-driven development.
Experience working in an agile development environment.
Preferred qualifications:
- Familiarity with research processes and experience working in a research environment.
- Demonstrated experience in architecting, developing and maintaining sophisticated data pipelines in a production environment.
- Demonstrated experience with data lakes and data warehouses
- At least one (2) year of experience with commercial cloud services such as Microsoft Azure, AWS or Google Cloud Platform.
- Experience with load testing and performance testing frameworks such as JMeter, Gatling or WRK.
- Experience with database schema design and optimization
- Experience with stream processing frameworks such as Kafka and Samza.
- Familiarity with Cl/CD tools such as Jenkins, Azure Pipelines, Travis Cl.
- Experience with RESTful API specification and the toolset such as OpenAPI, Swagger.
Requirements:
- Successful background check
CMU’s COVID-19 Vaccination Requirements: As a condition of employment, Carnegie Mellon University requires all staff and faculty working in the United States to be fully vaccinated against COVID-19. Prior to commencement of employment, new hires in the United States must provide proof of vaccination or obtain an approved exemption. (Exemptions may be requested for medical reasons or for religious or strong moral or ethical conviction.) Those granted an exemption must comply with all applicable COVID-19 mitigation requirements, including use of facial coverings, daily self-assessment and weekly Tartan Testing.
Location
Pittsburgh, PA
Job Function
Software/Applications Development/Engineering
Position Type
Staff – Regular
Full Time/Part time
Full time
Pay Basis
Salary
More Information:
- Please visit “Why Carnegie Mellon” to learn more about becoming part of an institution inspiring innovations that change the world.
- Click here to view a listing of employee benefits
- Carnegie Mellon University is an Equal Opportunity Employer/Disability/Veteran.
- Statement of Assurance