Schrodinger, Inc. seeks a Developer II to initiate, develop, and maintain custom scripts, end-to-end workflows, and CI/CD pipelines to ensure efficient, secure, and reliable software development and deployment processes across multiple platforms and environments.
Requirements
- familiarity with cloud security best practices, IAM, and security tools
- experience migrating CI/CD infrastructure to the cloud
- experience with a major cloud provider (AWS, GCP, and/or Azure), including managing services like compute, storage, and networking
- experience with IaC and configuration management tools (e.g. Terraform/CloudFormation/Ansible)
- experience implementing build and deployment automation to support scalable applications
- experience developing and maintaining CI/CD pipelines to build, test and deliver desktop software
- experience developing automated Python tests in pytest using custom pytest plugins
Responsibilities
- Initiate, develop & maintain custom scripts to compile & test code across Linux, macOS & Windows platforms.
- Initiate & be responsible for end-to-end workflows that install the product internally on 8+ on-prem NFS servers.
- Build & manage container images used in services & supported Linux distributions.
- Develop, maintain & support CI/CD workflows & self-hosted runners for Buildbot CI, GitLab CI & GitHub Actions.
- Troubleshoot & maintain a fleet of physical Linux, Windows & macOS machines used in automated build/test workflows.
- Plan & run coordinated product release workflows, working closely with development, QA, product & marketing teams.
- Maintain & validate system package requirements across all supported Linux distributions.
Other
- Ensure documentation, thorough testing & regular improvement with input from QA, PM & UX teams.
- Coordinate with IT & QA teams to ensure deployments are consistent, secure & easily replicable.
- Engage in new initiatives, taking ownership of assigned functionality & actively drive improvements.
- Collaborate with security & ops teams to ensure compliance & best practices.
- Actively contribute ideas to improve speed, reliability & developer usability.