Senior Software Engineer
Boulder, CO
Convergent Research
We are looking for a highly skilled Senior Software Engineer to contribute to the architectural design, development, integration, optimization, and testing of the C-Star system. As a member of a relatively small and agile team, you will work as both an individual contributor - developing high-quality software, identifying and executing tasks in the software development life cycle, reviewing and debugging code, collaborating with the internal team, and ensuring software is up-to-date with the latest technologies – as well as providing technical guidance, mentorship, and light project management expertise to deliver software on release deadlines. As the software engineering team grows, there may be opportunities to take on expanded responsibilities and people management.
Primary Responsibilities
- Work with the existing C-Star development team to a) Define feature and release requirements; b) Architect new features and functionality; c) Produce high-quality code, review and debug code, document code, optimize code performance, and ensure that software conforms to best practices.
- Provide technical guidance and mentorship to the developer team, including guiding the team toward a practice of Agile development methodology.
- Work closely with the leadership and the technical project manager to help team deliver software against ambitious release deadlines
- Continuously evaluate and incorporate new technologies and methodologies to improve software and the development processes.
- Develop and enforce robust schema for versioning of C-Star elements (interacting/modular sets of codes-bases, datasets, workflows, HPC architectures) to ensure simulation workflow reproducibility.)
- Take on complex software engineering tasks that may require deep and specialized skills. Some examples (these will evolve with the role and the individual) include a) Contributing to the development of strategies for efficient storage and retrieval of large volumes of data; b) Providing strategic and technical guidance on the adoption of novel computing architectures (GPU/CPU); c) Providing strategic and technical expertise on cloud-based workflow management and HPC computing architectures.
- Report on progress and make high-level recommendations to the Executive Leadership Team.
- Represent C-Star to external stakeholders.
Qualifications
- A bachelor's, master's, or Ph.D. in Computer Science, Earth System Science, Physics, Applied Math, or other relevant field.
- 6+ years working as a software engineer within a team
- 4+ years experience planning, coordinating, and executing software development projects with structured release schedules
- 2+ years leading a software engineer team or acting in a similar position of responsibility and accountability.
- 2 + years experience working within an Agile development paradigm
- Excellence in Python programming – with demonstrated experience developing commercial-grade software packages.
- Comfort working in other programming languages commonly used in scientific computing, such as Julia, C/C++, and/or Fortran.
- Experience and proficiency working with Git/Github version control systems
- Understanding of DevOps practices and tools for continuous integration and continuous deployment (CI/CD).
- Strong software architecture and design skills, including the ability to design and implement scalable, modular, and maintainable software systems.
- Excellent communication skills to effectively collaborate with internal and external stakeholders.
- Demonstrated commitment to continuous learning and staying informed about advancements in software development, HPC architecture, data engineering/structures.
Bonus
- Knowledge of cloud platforms (e.g., AWS, Azure, Google Cloud) and experience in deploying and managing applications in cloud environments.
- Experience in Enterprise Software development
- Experience with parallel programming and optimization techniques for HPC environments.
- Experience working in interdisciplinary teams and translating scientific requirements into software specifications.
- Comfort working with advanced statistical methods, data assimilation, artificial intelligence, and/or machine learning.
- Knowledge of geophysical modeling frameworks and tools, such as the Community Earth System Model (CESM), the Regional Ocean Modeling System (ROMS), or the Modular Ocean Model (MOM).
* Salary range is an estimate based on our AI, ML, Data Science Salary Index 💰
Tags: Agile Architecture AWS Azure CI/CD Computer Science Data management DevOps Engineering Fortran GCP Git GitHub Google Cloud GPU HPC Julia Machine Learning Mathematics Open Source Physics Python SDLC Statistics Testing
Perks/benefits: Career development
More jobs like this
Explore more career opportunities
Find even more open roles below ordered by popularity of job title or skills/products/technologies used.