Senior Software Engineer; Limited-Term
Listed on 2026-07-19
-
Software Development
Software Engineer, Full Stack Developer
Location: Allenspark
Job Summary
We're seeking a thoughtful, collaborative engineer to join our team and help us design, develop, and maintain a comprehensive financial forecasting and grant management application used by grant holders and administrators across the university. This web-based tool supports projected and actual expense tracking, what‑if scenario modeling, employee and fund distribution management, automated salary and benefits calculations, burn rate analysis, and forward financial projections using integrated data feeds from university financial and HR systems.
You will join a small, collaborative team of software engineers and QA engineers working within an Agile environment. Work will include maintaining and evolving an existing legacy application while contributing to decisions about the system's long‑term technical direction. The current system is a server‑rendered PHP application that is largely procedural, with a front end built using JavaScript and jQuery UI, backed by a relational database following common MySQL patterns.
This existing stack reflects where the application is today, not necessarily where it is headed, and you will have a meaningful opportunity to help shape its modernization direction.
This is a 3‑year term position.
CU is an Equal Opportunity Employer and complies with all applicable federal, state, and local laws governing nondiscrimination in employment. We are committed to creating a workplace where all individuals are treated with respect and dignity, and we encourage individuals from all backgrounds to apply, including protected veterans and individuals with disabilities.
Who We AreOIT is valued by campus as a strategic, inclusive and innovative partner in advancing learning and discovery, enabling CU Boulder to be an outstanding public university. OIT enables campus priorities by providing high‑value IT services and solutions. We work with trust, as a foundation for how we engage with one another and with campus partners, along with curiosity in how to better support the campus and our partner’s while encouraging empowerment and authentic engagement among ourselves and celebrating a culture that promotes a sense of belonging while acknowledging that each person is unique and valued.
SoftwareDevelopment and Support
- Develop moderately complex features, enhancements, and data integrations, accounting for edge cases and corner cases in implementation.
- Write and maintain automated unit and integration tests to ensure appropriate coverage and that code meets acceptance criteria.
- Diagnose and solve moderately complex issues, identify root causes, and develop fixes for existing applications.
- Monitor and update application dependencies and libraries to maintain security and compatibility.
- Identify and implement performance improvements, including optimizing data access and network operations.
- Mentor and support junior developers through code reviews, pair programming, and day‑to‑day technical guidance.
- Manage source control workflows, including maintaining branching strategies and resolving merge conflicts independently.
- Contribute as an active member of an agile development team, delivering incremental value through iterative development cycles.
- Perform application deployments and maintain automated CI/CD pipelines, developing new pipelines as needed.
- Develop and manage applications using container technologies and virtual machines.
- Maintain application monitoring, dashboards, and alerting to ensure system health and performance.
- Collaborate with partner teams and interested parties, such as Platform and System Engineering, UX, service owners, and business analysts, to accomplish application and project goals.
- Work with QA to identify testing needs and edge cases and ensure appropriate test coverage is implemented.
- Interpret moderately complex business requirements, asking clarifying questions to ensure accurate understanding before accepting work.
- Communicate technical concepts clearly to developers and non‑technical partners, using appropriate analogies and examples.
- Write and update documentation for application support and sharing…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).