Senior Software Engineer (Limited-Term)
Indexed description
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 Are
OIT 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.
Software Development And Support
What Your Key Responsibilities Will Be
- 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 knowledge.
- Provide constructive, actionable feedback during code reviews and team discussions.
- Analyze business requirements and recommend technical solutions for moderately complex subsystems and applications.
- Research and evaluate new application frameworks, development tools, and technologies, and make recommendations on adoption.
- Analyze disparate information systems and contribute to technical plans for data integrations.
- Analyze and take appropriate steps to identify and mitigate application security vulnerabilities.
- Evaluate and recommend improvements to existing development processes and workflows.
- Maintain and expand technical proficiency through available resources, conferences, seminars, and coursework.
- Keep up to date with emerging technologies and industry standard methodologies through collaboration with colleagues and peer institutions.
- This is a limited term position ending on 6/30/29.
- This role is working in a hybrid work situation, coming on site rarely for campus needs.
- The annual salary range is $95,000 - $104,440.
Be Statements
Be courageous. Be unique. Be Boulder.
What We Require
- Bachelor’s degree in Computer Science or related field. A combination of education and or relevant experience may be substituted for the degree on a year for year basis.
- 3 years of software development experience.
- Due to requirements to access export-controlled data and information, only U.S. citizens, lawful permanent residents (green cards), or other protected individuals (i.e., persons designated as an asylee, refugee, or a temporary resident under amnesty provisions) may apply.
- Accept the university's mission and demonstrate commitment to positively impacting the experience of students, faculty, researchers, and colleagues.
- Proactively find opportunities for improvement and constructively challenge existing approaches to drive better outcomes.
- Advocate for ideas with conviction while remaining open to and thoughtfully considering differing perspectives.
- Collaborate effectively in team settings while also demonstrating the ability to work independently and manage responsibilities with minimal direction.
- Demonstrate adaptability by taking on unfamiliar challenges and responsibilities beyond core engineering disciplines.
- Approach complex problems with curiosity and persistence, seeking thorough and well-reasoned solutions.
- Prioritize the needs of the team, organization, and customers served when making decisions and recommendations.
- Lead with confidence while remaining receptive to feedback and acknowledging the contributions of others.
- Demonstrate self-awareness and emotional intelligence, navigating interpersonal dynamics with professionalism and care.
- Proficiency in object-oriented languages (e.g., Java, C#) and modern frameworks (e.g., Spring Boot, .NET).
- Proficiency in scripting languages (e.g., Python, Bash, PHP).
- Expertise in front-end technologies: HTML, CSS, and JavaScript or TypeScript.
- Proficiency with modern JavaScript frameworks, particularly Angular.
- Proficiency with relational databases such as MySQL, Oracle, or PostgreSQL, including database design, optimization, and query performance tuning.
- Expertise in RESTful API design and development.
- Familiarity with GraphQL API design and development.
- Proficiency with CI/CD pipelines and automated deployment practices.
- Proficiency with containerization and environment management tools (e.g., Docker).
- Proficiency with version control systems, particularly Git.
- Proficiency in software architecture and system design principles.
- Proficiency in application security standard processes (e.g., OWASP Top 10, input validation, authentication/authorization).
- Expertise in testing methodologies, including unit, integration, and end-to-end testing.
- Expertise in troubleshooting and debugging across the full stack.
- Familiarity with Agile/Scrum development methodologies.
- Proficiency with command-line and shell environments.
- Experience with higher education enterprise systems such as student information systems, learning management systems, or financial/HR platforms.
- Proficiency with AI-assisted development tools such as GitHub Copilot or similar coding agents.
- A current resume.
- A cover letter that specifically tells us how your background and experience align with the requirements, qualifications, and responsibilities of the position.
Please apply by July 16, 2026 for consideration.
Note: Application materials will not be accepted via email. For consideration, please apply through CU Boulder Jobs.
In compliance with the Colorado Job Application Fairness Act, in any materials you submit, you may redact or remove age-identifying information such as age, date of birth, or dates of school attendance or graduation. You will not be penalized for redacting or removing this information.
Create a free Caio profile to unlock more results and save your role and location preferences.
Unlock free search