Software Engineer

Updated: 2 days ago
Location: Los Angeles, CALIFORNIA

The University of Southern California (USC), founded in 1880, is located in the heart of downtown L.A. and is the largest private employer in the City of Los Angeles. As an employee of USC, you will be a part of a world-class research university and a member of the “Trojan Family,” which is comprised of the faculty, staff, and students that make the university a great place to work.  

As a community of Dornsife College “we are committed to the creation, preservation, and communication of fundamental knowledge in all its forms…as well as a lifelong passion for learning and a commitment to the betterment of society.”  The academic mission of Dornsife College can only be realized to its fullest potential when we build and protect a representative, equitable, inclusive culture of scholarship for students, faculty, and staff.  This is not done through initiatives but by embedding these values into the everyday interactions, relationships, policies, and practices of the College.  What is required is a seamless integration of the tenets of equity and inclusivity into every facet of academic life.  If we want our scholars, staff, and students to be able to give their very best, we must create an academic environment that portends success.  

Success is possible when every member of the Dornsife community owns their role as a steward of the culture in which we learn, research, and work; when we believe that it is because of who we are that we are able to do what we do: achieve excellence, together. 

Achieving a robust and inclusive academic culture requires more than just the completion of a task, but includes that person’s capacity to contribute positively to the relationships and culture of their office or department.  Therefore, any applicant seeking to advance the mission of Dornsife College should also be assessed on their capacities beyond the technical elements of their work, and demonstrate an understanding of their impact on others, and to articulate how they contribute positively to those around them.

The USC Dana and David Dornsife College of Letters, Arts and Sciences is seeking a Software Engineer in the Statewide California Earthquake Center (SCEC).The largest and oldest of the USC schools, USC Dornsife functions as the academic core of the university, offering courses and advancing knowledge across the humanities, social sciences and natural sciences.

SCEC invites applications for a Software Engineer to develop high-impact seismic hazard forecast models. In this position, you will use open-science best practices to develop, update, and release OpenSHA earthquake forecast models. This role provides a unique opportunity to directly influence scientific advancements in earthquake forecasting through software development. You will work alongside geoscientists and computer scientists, contributing your software expertise and learning from their domain knowledge.

Responsibilities: As part of SCEC's research computing group, you will collaborate with researchers from the U.S. Geological Survey and the broader SCEC community to implement new capabilities within the OpenSHA software platform. Specifically, you will:

  • Develop OpenSHA tools to access the National Seismic Hazard Model
  • Improve and document OpenSHA automated software tests
  • Develop an OpenSHA interface to Operational Aftershock Forecast systems
  • Train scientific and engineering software users on OpenSHA functionalities
  • Run large-scale scientific simulations using open-science supercomputing facilities
  • Write software documentation and training materials
  • Contribute to the development of peer-reviewed publications
  • Meet with research and funding partners and present work at scientific conferences

Preferred Qualifications and Skills:

  • Scientific Software Development : 4+ years of experience, including work in higher education.
  • Technical Skills : Proficiency with Java and Python scientific software applications, Linux-based software development and administration, containerizing scientific software using Docker and Cloud technologies.
  • Software Development Practices : Experience with Git-based version control, unit/performance testing, systems integration, and user acceptance testing.
  • Data Management : Expertise in managing both file-based and relational scientific data and metadata.
  • Documentation and Communication : Experience writing software documentation and training materials. Excellent written and oral communication skills, able to tailor information for different audiences.
  • Problem-Solving and Collaboration : Excellent organization, planning, analytical, and problem-solving skills. Ability to provide technical expertise and creative solutions aligned with organizational goals and customer needs. Ability to build strong working relationships with diverse teams.
  • Security and Scalability : Substantial knowledge of security concepts and familiarity with secure code development techniques. Understanding of scalable and automated solutions.

Salary range: The salary range for this position is $106,700 - $125,000. When extending an offer of employment, the University of Southern California considers factors such as (but not limited to) the scope and responsibilities of the position, the candidate’s work experience, education/training, key skills, internal peer equity, federal, state and local laws, contractual stipulations, grant funding, as well as external market and organizational considerations.

Performs other related duties as assigned or requested. The university reserves the right to add or change duties at any time.

Required Documents and Additional Information:

  • Resume and cover letter required (may be uploaded as one file). Please do not submit your application without these documents.
  • Job openings are posted for a minimum of (5) five business days. This job may be removed from posting boards and filled any time after the minimum posting period has ended, so please apply on the same business day if interested.
  • USC has excellent benefits, including health benefits for staff and their family with access to the renowned university medical network; eligibility for retirement plans with employer contributions after six months of employment; tuition benefits for staff and their family; free Professional Development classes; central Los Angeles location with easy access to commuter trains, buses and free tram pick up services; discounts to sporting and other campus events.
  • This is a full-time, grant-funded staff position for a 1-year fixed term contract with the possibility of renewal each year based on performance and funding.
  • A flexible hybrid work arrangement is available upon request. The individual will be expected to work in person at USC’s University Park Campus unless traveling.

The University of Southern California is an Equal Opportunity Employer that Values Diversity.


Minimum Education: Bachelor's degree Addtional Education Requirements Combined experience/education as substitute for minimum education Minimum Experience: 2 years Minimum Skills: Two years’ experience with programming and documentation procedures, methods and operator instructions. Experience conducting unit/performance tests, systems integration and user acceptance. Demonstrated experience with one or more relevant programming languages, able to gain needed contexts for domains. Comprehensive knowledge of architecture, design and development of software solutions. Excellent organization, planning, analytical and problem-solving skills. Ability to provide technical expertise and creative solutions while aligned to organizational objectives and customer needs. Experience weighing economic costs and values objectively, supporting coworkers on a project basis, and contributing to discussions in a civil manner. Excellent written and oral communication skills, able to provide both detailed information as well as summaries to varied audiences. Substantial knowledge of security concepts, familiarity with secure code development techniques, and understanding of scalable and automated solutions. Ability to build strong, positive working relationships and rapport with diverse groups of team members. Preferred Education: Bachelor's degree Or Bachelor's degree Or Bachelor's degree Preferred Experience: 4 years Preferred Skills: Four years’ experience in IT/programming. Proficiency with Python, Javascript, C/C++, Java, Ruby and/or other advanced programming languages. Experience with Unix/Linux programming and/or administration. Experience in higher education.

Similar Positions