Ansys IDEAS Digital Forum Banner 1

Lead Software Engineer, Platform Development

Lead Software Engineer, Platform Development
by Daniel Nenni on 09-12-2020 at 6:38 pm

Website SiFive SiFive

Responsibilities

Designing and developing components of the build infrastructure that are repeatable, reproducible, and performant.

Applying knowledge of operating systems and distributed systems to make efficient use of system APIs and resources.

Decomposing the infrastructure into different subcomponents and layers so that each problem can be solved once and solved well.

Working with hardware and software engineering teams to build tools and infrastructure that empower them.

Discovering, defining, and communicating design patterns and conventions for build rules in the form of frameworks, tools, and documentation.

Curating build flows and pipelines that serve as exemplary models for others to base their workflows on.

Requirements

Proven experience leading software projects and/or directly supporting large software systems.

Strong sense of good software, API, and library design.

Proficiency with a systems programming languages (e.g. C/C++/D/Swift/Rust).

Comfortable with functional programming concepts (e.g. map/fold/reduce, option types, immutability).

Proficiency with Linux and Linux-based systems. While you don’t need to be an expert, you should be comfortable with command lines, package management, the process model, and file systems.

Good interpersonal skills, and especially an ability to communicate software concepts to engineers of various disciplines.

A willingness to work in a large legacy codebase, with an eye for improving it or replacing it.

Excited to learn a potentially unfamiliar industry (hardware) and to apply ideas from both the hardware and software domains.

Strong code review culture.

Apply for job

To view the job application please visit www.sifive.com.