Brookhaven National Laboratory (BNL) is the building site for the Electron-Ion Collider (EIC), a one-of-a-kind nuclear physics research facility. The EIC will be a discovery machine for unlocking the secrets of the “glue” that binds the building blocks of visible matter in the universe. The machine design is based on the existing and highly optimized RHIC Ion-Ion collider. It will consist of two intersecting accelerators, one producing an intense beam of electrons, the other a beam of protons or heavier atomic nuclei which are steered into collisions. Beyond sparking scientific discoveries in a new frontier of fundamental physics, the Electron-Ion Collider will trigger technological breakthroughs that have broad-ranging impact on human health and national challenges.
Position Description
We seek a Controls Software Technical Lead to join our Electron-Ion Collider (EIC) team. The successful applicant will work on an engineering team responsible for planning, design, construction, testing, and support of core software infrastructure for the EIC Controls System that are critical for accelerator systems integration and commissioning across many subsystems. Work activities may include software interface development for the same systems in coordination with hardware development and IT teams in the EIC Controls Group along with stakeholders in other administrative, engineering, and science groups. This position will report to the EIC Controls Group Leader and will involve coordination on technical development activities with a Controls Software Group Supervisor.
Essential Duties and Responsibilities:
Support the technical development of software infrastructure that is required for a large, distributed Accelerator Controls System that contributes to meeting the milestones for the EIC Project. Controls will support a standardized suite of applications interfacing with RF, Instrumentation, Vacuum, Power Supply systems as well as other accelerator equipment at the EIC Complex.
Contribute to the development of best practices and procedures for prototyping, testing, installation, and commissioning activities associated with all EIC Controls software platforms.
Coordinate with stakeholders in other groups inside and outside of the EIC project that are users or developers of systems reliant on Controls System hardware infrastructure and components, including managers, administrators, technicians, engineers, physicists, and machine to develop requirements, implementation plans, procure equipment, deploy systems, and support EIC commissioning.
Participate in technical reviews for EIC Controls Systems and share knowledge with other groups on technical details and status.
Contribute to the planning and tracking of cost and schedule for systems under the individual’s purview on at least a monthly basis.
Act as a high-level liaison to the wider EPICS community through participation and organization of official events hosted at BNL and other laboratories and conferences where information sharing, planning, and development work of EPICS tools will occur. This supports the EIC mission by keeping our team aligned with developments in the community, sharing our own knowledge developed from executing EIC Controls plans, and seeking support from the community for EIC design or development needs.
Provide planning and development support for at least one major software tool used in the EPICS community.
Provide planning and technical expertise in developing and analyzing mechanisms for bridging the existing proprietary Controls System equipment interfaces and services with the equivalent tools associated with the EIC Project scope.
Required Knowledge, Skills, and Abilities:
BA/BS Degree (or equivalent experience), preferably in Computer Science or a related discipline
At least ten years of relevant experience
Experience supporting high performance data management systems, including data storage and retrieval and databases
Experience supporting device name lookup services for distributed controls
Familiarity with alarm notification services in EPICS
Familiarity with communication protocols and Application Programming Interfaces (APIs) that are commonly used in distributed control systems for providing or accessing core services
Experience using version control systems for software development
Experience developing formal functional and performance requirements as a software engineer in coordination with relevant stakeholders
Experience using and developing software release protocols and Continuous Integration / Continuous Deployment (CI/CD) tools
Ability to coordinate a team of developers and disseminate related information accurately and on a timely basis
A minimum of five years of experience in multiple programming languages each (ex. Python, Java, C++)
Expertise developing interfaces using modern web technologies and HTTP-based services (example - REST, Django, React)
Preferred Knowledge, Skills, and Abilities:
An advanced degree in Computer Science or a related discipline
15 years' related experience
Experience using GitHub for version control
Experience using CS Studio as a services developer and as a user interface developer
Experience supporting and using an electronic log-keeping service
Experience supporting at least one major software tool used by EPICS community as a developer
Experience supporting the development or deployment of services involving physics modelling, AI/ML, or digital twin functionality
Experience supporting activities under DOE Order 413.3B relating to project management, Earned Value Management Systems, project review, and technical review processes
Knowledge of recent EPICS collaboration practices and activities from other institutions
Experience defining technical standards in software development, including the incorporation of new technologies
Experience with integrating highly complex projects with broad implications for their organization
Demonstrated ability to advise management and customers on advanced technologies and applications
Demonstrated ability to mentor team members and provide technical leadership to a project team
Environmental, Health & Safety Requirements:
Other Information:
Candidate will be placed at the appropriate level based on breadth and depth of knowledge.Brookhaven Laboratory is committed to providing fair, equitable and competitive compensation. This is a multi-level role and the full salary range for this position is $120,000 - $217,300 / year. You will be placed at the level and salary commensurate with your experience. Salary offers will be commensurate with the final candidate’s qualification, education and experience and considered with the internal peer group.