Jr. Software Engineer - Build and Release at Fungible
Santa Clara, CA, US
Fungible is defining data-centric computing, both in terms of software and in terms of hardware (with its DPU)
 
Fungible is building a new class of microprocessor and a whole set of related software.  Our build and release team contributes to Fungible's embedded OS and other softwares by building infrastructure and tools needed to correctly build, package, test and debug our systems.  Some of our work includes customized build systems, continuous integration and testing infrastructure,  log analysis from machines in the field, and automation to easily spot and share problems.  We're looking for skilled engineers who can take a complex problem, build great solutions, work with others, and help us ship our products.

Role and Responsibilities

    • The role will be that of a build engineer focussed on supporting daily build activities including troubleshooting build and test failures
    •  Maintaining and enhancing existing C/C++ based build infrastructure
    • Ensure optimal performance of our Jenkins groovy pipelines
    • Interest in working at multiple levels of build from embedded OS and code generators up to packaging and  test infrastructure.
    • Provide support to development and quality teams in resolving issues that may arise from daily builds
    • Constantly look to improve the speed and efficiency of our tools through automation

Skills and Education Required

    • BS in Computer Science or equivalent degree
    • 1-2 years of relevant work experience as a Build & Release Engineer
    • Proficient in shell and Python scripting
    • Working knowledge of Groovy 
    • Basic SDLC experience with C/C++, gcc and makefiles
    • Basic knowledge of Linux systems administration
    • Self-starter and willing to take ownership 

Preferred Experiences

    • Experience with CI/CD infrastructure, Jenkins for automating build pipelines
    • Experience with C/C++ development and makefiles 
    • Experience with Groovy, and customizing build systems
    • Experience in Linux development environments and embedded software.
    • Exposure to git, Github/GitLab, and code branching/merging strategies
    • Exposure to tools and techniques in the areas of build, test, deploy, and release