Logo
SLAC National Accelerator Laboratory

Software Systems Engineer

SLAC National Accelerator Laboratory, Menlo Park, California, United States, 94029


Software Systems Engineer

Job ID

6238

Location

SLAC - Menlo Park, CA

Full-Time

Regular

SLAC Job Postings

Position Overview:

The Controls Software Engineering department of the Technology Innovation Directorate (TID) at the SLAC National Accelerator Laboratory is seeking a talented software systems engineer to support the software tools needed to advance various scientific programs at SLAC. This department develops innovative software and electronics for research facilities around the world and in space.

The work will include science, engineering concept development and hands-on work with detector systems and controls systems. SLAC has broad engineering and technical support, but there will be a need for a wide range of work ranging from concept development to laboratory performance testing, from electronics and software development in a test bed environment to on-site commissioning with domain experts at their facilities. This position requires great flexibility in doing whatever is needed for a successful project but is primarily focused on software solutions to high-level and real-time control decisions. Members of our team are encouraged to work in various areas, supporting multiple diverse designs in a dynamic and energetic environment which values work-life balance and comes with the benefits of being an employee of Stanford University.

This position has a multidisciplinary role within the Controls Software Engineering department of TID, working with other software professionals, physicists, and hardware engineers. It also provides the opportunity to interact regularly with key stakeholders, including accelerator operators, application developers, instrumentation experts, and accelerator physicists.

The work involves enhancing and supporting user interaction with various systems, from particle accelerator control systems to individual devices being developed for custom projects. It will also involve solving problems in the emerging field of autonomous control systems based on machine learning, accelerator simulation and more.

This position will have an impact on future accelerator projects and scientific discoveries, as well as day-to-day operations within SLAC. It is a regular, full-time position.

Specific responsibilities include:

Enhance and maintain software to support user interaction with various systems within SLAC.The software provides certain stakeholders with tools to assemble their own user interfaces with access to a variety of accelerator elements, ranging from supporting interactions with single hardware components to allowing control and monitoring of entire subsystems.Higher level functionality will also be necessary for integrated physics applications such as simulation and machine learning. This interface assembly and integration software will also be made available to outside interests including other laboratories around the world.

Promote sharing SLAC-developed tools with the worldwide community of accelerator controls engineers and integrate new releases from that community into the SLAC working environment.

Develop a test environment to support development activities outside of the accelerator¿s production network.

Investigate new technologies and propose initiatives to best meet our customer¿s needs.

Provide training to our stakeholders for accelerator control software as needed.

To be successful in this position you will bring:

Bachelor¿s degree in computer science, software engineering, or related fields and two years of relevant experience in software development.

Strong programming and debugging skills with Python and C++.

Experience with the Qt cross-platform user interface libraries and framework.

Demonstrated background with Linux as a development platform.

Current knowledge of the latest software design and development methodologies.

Demonstrated skills with modern distributed version control tools such as Git.

Experience with software deployment pipelines using CI/CD technologies like GitHub Actions.

Experience building/deploying software applications with containerization technologies such as Docker and Kubernetes.

Knowledge of and ability to select, adapt, and effectively use a variety of programming methods.

Ability to effectively communicate and present ideas to collaborators and stakeholders.

Strong verbal and written communication skills with both technical and non-technical audiences.

Preferred Qualifications, but Not Required:

Cross-platform software development experience on Linux.

Knowledge of database systems.

Experience with machine learning related libraries like PyTorch or TensorFlow.

Familiarity with machine learning and their data pipelines.

Familiarity with FPGAs or custom integrated circuits design.

Experience with particle accelerators, control systems

Experience with EPICS Toolkit for developing control system applications

SLAC employee competencies:

Effective Decisions: Uses job knowledge and solid judgment to make quality decisions in a timely manner.

Self-Development: Pursues a variety of venues and opportunities to continue learning and developing.

Dependability: Can be counted on to deliver results with a sense of personal responsibility for expected outcomes.

Initiative: Pursues work and interactions proactively with optimism, positive energy, and motivation to move things forward.

Adaptability: Flexes as needed when change occurs, maintains an open outlook while adjusting and accommodating changes.

Communication:Ensures effective information flow to various audiences and creates and delivers clear, appropriate written, spoken, presented messages

Relationships: Builds relationships to foster trust, collaboration, and a positive climate to achieve.

Physical requirements and Working conditions:

Consistent with its obligations under the law, the University will provide reasonable accommodation to any employee with a disability who requires accommodation to perform the essential functions of his or her job.

Work standards:

Interpersonal Skills: Demonstrates the ability to work well with Stanford colleagues and clients and with external organizations.

Promote Culture of Safety: Demonstrates commitment to personal responsibility and value for the environment, safety, and security; communicates related concerns; uses and promotes safe behaviors based on training and lessons learned.Meets the applicable roles and responsibilities as described in the ESH Manual, Chapter 1¿General Policy and Responsibilities: http://www-group.slac.stanford.edu/esh/eshmanual/pdfs/ESHch01.pdf

Subject to and expected to comply with all applicable University policies and procedures, including but not limited to the personnel policies and other policies found in the University's Administrative Guide, http://adminguide.stanford.eduGiven the nature of this position, SLAC is open to on-site and hybrid work options.

Given the nature of this position, SLAC is open to on-site or/and hybrid work options with a preference for at least availability for periodic on-site experimental campaigns numbering in the few per year scale.

Classification Title: Staff Engineer 2

Grade: K

Job code: 0132

Duration: Regular Continuing

_The expected pay range for this position is $116,000 to $170,000 per annum. SLAC National Accelerator Laboratory/Stanford University provides pay ranges representing its good faith estimate of what the university reasonably expects to pay for a position. The pay offered to a selected candidate will be determined based on factors such as (but not limited to) the scope and responsibilities of the position, the qualifications of the selected candidate, departmental budget availability, internal equity, geographic location and external market pay for comparable jobs._

SLAC National Accelerator Laboratory is an Affirmative Action / Equal Opportunity Employer and supports diversity in the workplace. All employment decisions are made without regard to race, color, religion, sex, national origin, age, disability, veteran status, marital or family status, sexual orientation, gender identity, or genetic information. All staff at SLAC National Accelerator Laboratory must be able to demonstrate the legal right to work in the United States. SLAC is an E-Verify employer.