We’re based in Santa Clara, California

Send your resume to careers@fungible.com

Hardware

Software

Senior Full-Chip Static Timing Analysis Engineer

As a member of Fungible's team, you will be responsible for all aspects of full-chip STA for a high-performance and highly integrated SoC. You will establish timing methodologies, develop timing constraints, do timing runs, develop timing ECO's, work with the physical design team to implement the ECO's, and be responsible for chip timing sign-off.

Skills, Education, and Experience Required

  • 10+ years relevant industry experience in all aspects of static timing analysis
  • Expert level knowledge and hands-on experience in full-chip/sub-chip static timing analysis, timing constraints generation and management, and timing convergence required
  • Expertise in STA tools and flows
  • Excellent understanding of timing corners, modes, process variations, and signal integrity related issues
  • Experience with synthesis, logic equivalence, DFT, and backend related methodology and tools
  • Good knowledge of C, C++, TCL, or Perl
  • Education: BSEE/MSEE

Keywords

silicon, chip, SOC, ASIC, full-chip STA, Primetime, full-chip timing, STA, static timing analysis, ASIC timing

Verification Engineer

Central to our mission is a highly programmable chip. As part of the verification team, you will be responsible for independently creating leading-edge constrained-random verification environments and using them to drive functional correctness of innovative SoCs.

Skills, Education, and Experience Required

  • BS and/or MS in Computer Science or equivalent degree
  • 8+ years of experience in ASIC/SoC verification with SV/UVM environments
  • In-depth knowledge of verification flows
  • Clear understanding of constrained random verification process, functional coverage, code coverage, assertion methodology & philosophy
  • Team player with excellent communication skills and the desire to take on diverse challenges

Additional Success Factors

  • Advanced knowledge of CPU & SoC architecture/design
  • Experience in verifying data center protocols such as Ethernet, TCP/IP and other communication protocols
  • Knowledge of formal verification, hardware emulation
  • Experience with security
  • Startup experience

Keywords

silicon, chip, SoC, ASIC, processor, CPU, GPU, fabric, networking, SSD, architecture, design, verification, CAD tools, x86, ARM, MIPS

Verification Engineer, Hardware Accelerators (Austin, TX)

Central to our mission is a highly programmable chip. As part of the verification team, you will be responsible for independently creating leading-edge constrained-random verification environments and using them to drive functional correctness of innovative designs. This position is in Austin, Texas.

Skills, Education, and Experience Required

  • BS in Electrical Engineering or equivalent degree
  • 8+ years of experience in ASIC/SoC verification with SV/UVM environments
  • In-depth knowledge of verification flows
  • Clear understanding of constrained random verification process, functional coverage, assertion methodology & philosophy
  • Team player with excellent communication skills and the desire to take on diverse challenges

Additional Success Factors

  • Knowledge of regular expression, parsing, compression, or cryptographic algorithms
  • Knowledge of formal verification, hardware emulation
  • Startup experience

Keywords

silicon, chip, SoC, ASIC, processor, CPU, SSD, architecture, design, verification, ARM, MIPS, DFA, NFA, regular expression, parser, Deflate, LZS, dedup, Huffman encoding, SSL, TLS, DES, 3DES, AES, RSA, DSA, DH, MD5, SHA

ASICd Software Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement a SDK to map network features, manage resources, and program the chip.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 4+ years experience developing an SDK to program the hardware
  • Experience in programming latest generation of data center switch chips, ideally for large multi-stage CLOS networks
  • Experience with hardware resource allocation and management (hash tables, TCAMs, ACLs and ARP/MAC/FIB-nexthop tables)
  • Experience in troubleshooting large-scale deployments
  • Ability to write correct C or C++ code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience with the Switch Abstraction Interface (SAI)
  • Experience with L3-FIB and L2-MAC table programming
  • Experience in developing features such as ACL, QoS, and SPAN

Keywords

SDK, hash table and TCAM resource management/optimization, L3-FIB, L2-MAC, ACL, QoS, SPAN, Flow-Span, Stats Manager, SAI

Compiler Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement compiler components for a domain-specific architecture.

Skills, Education and Experience Required

  • BS in Computer Science or equivalent degree
  • Experience implementing parts of a compiler back-end
  • Ability to write correct Python, C++, and C code quickly
  • Architectural sense
  • Desire to push the state of the art
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience with constraint solvers
  • Understanding of networking pipelines
  • Experience with FPGA compilers
  • Experience adding an LLVM back-end
  • Experience with P4 or other domain-specific languages
  • Startup experience

Keywords

compiler, P4, LLVM, domain-specific languages, constraint solver, FPGA, networking pipeline

Control Plane Layer-2 Engineer

Central to our mission is a highly programmable chip. Your role will be to implement the Layer-2 Control Plane stack and related infrastructure.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 4+ years experience with large-scale data center network Layer-2 control plane protocols (LLDP, MCEC/VPC, LACP, STP, MSTP, PVSTP, ARP, Layer-2 Bridging)
  • Experience in designing and implementing such control plane protocols
  • Experience in mapping the protocol requirements to an ASIC data plane
  • Experience in troubleshooting large-scale deployments
  • Ability to write correct C or C++ code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience with the implementation of such protocols in the Linux kernel stack
  • Experience with Network Virtualization (vSwitch and VxLAN, NVGRE or Geneve encapsulation)

Keywords

LLDP, MCEC/VPC, LACP, STP, MSTP, PVSTP, ARP, Linux kernel network stack

Control Plane Routing Software Engineer

Central to our mission is a highly programmable chip. Your role will be to implement the Control Plane Routing stack and related infrastructure.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 4+ years experience with large-scale data center network control plane protocols (BGP and ISIS/OSPF)
  • Experience in designing and implementing such control plane protocols
  • Experience in mapping the protocol requirements to an ASIC data plane
  • Experience in troubleshooting large-scale deployments
  • Ability to write correct C or C++ code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience with URIB, MRIB
  • Experience with route redistribution and fast convergence in CLOS networks
  • Experience with network virtualization (vSwitch and VxLAN, NVGRE or Geneve encapsulation)

Keywords

BGP, ISIS/OSPF, URIB, MRIB, route redistribution, fast convergence, BFD

Distributed Storage Management Engineer

Software for managing Storage in a large scale Data Center environment is a critical function. Your role will be to design and implement key management and control plane functions as well as to integrate with existing solutions.

Skills, Education, and Experience Required

  • BS in Computer Science or equivalent degree. MS preferred
  • 7+ years experience in software infrastructure
  • Experience in Storage products and/or applications
  • Experience with Management/Control Plane software
  • REST-API design and implementation
  • Ability to write correct C or C++ code efficiently and accurately
  • Experience in Python/Go development
  • Self motivated, independent and proactive

Additional Success Factors

  • Excellent communication and organizational skills to collaborate and stay in sync with other team members
  • Startup experience

Keywords

Storage Management, SDS, OpenStack, NVME, Consensus, Zookeeper, Etcd, Ceph, Linux, IPC, TCP, Socket

Docker Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement the approach that optimizes running containers when our chip is involved.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • Deep understanding of the Docker architecture
  • Familiar with networking protocols
  • Familiar with storage subsystems
  • Experience with the Linux kernel and virtualization
  • Architectural sense
  • Ability to write correct C, C++ or Golang code efficiently and accurately
  • Self-motivated, independent, and proactive

Additional Success Factors

  • Official Docker maintainer
  • Experience implementing a Docker network plugin
  • Experience with the implementation of an overlay network
  • Experience implementing a Docker volume plugin
  • Experience with the implementation of a storage subsystem
  • Startup experience

Keywords

Docker, Containers, Storage, Networking, Overlay Network, Linux, Hypervisors, Virtualization, Microkernel

Firewall Software Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement firewall software that runs on the chip.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 5+ years experience in building firewall and DPI software
  • Experience with implementing DPI based security technologies
  • Experience with application identification
  • Experience with firewall, distributed policy management
  • Strong in data structures
  • Ability to write correct C or C++ code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience with software-defined data center technologies
  • Experience with multi-core network processors
  • Startup experience

Keywords

DPI, anti-virus, malware, IDS, IDP, IPS, firewall, application identification

High-Performance Linux Driver and Libraries Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement Linux device drivers and libraries that run on a data center server and communicates with our chip.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 5+ years experience in writing high-performance Linux device drivers for high-performance I/O devices, such as netdevice, NVMe, OFED (InfiniBand, RoCE, iWARP), DPDK, or cryptography
  • Ability to write correct C code quickly
  • Architectural sense
  • Self motivated, independent, detail oriented, and proactive

Additional Success Factors

  • Startup experience
  • Experience with OS bypass technologies (OFED, DPDK, VFIO)
  • Experience with PCI Express single-root I/O virtualization (SR-IOV)
  • Experience of working with open source communities

Keywords

Linux, high-performance I/O device driver, 10/25/50/100 Gbps Ethernet, InfiniBand, NVMe, RDMA, OFED, DPDK, crypto, VFIO, OS bypass, PCIe, SR-IOV

High-Performance Network Stack Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement a high-performance network stack that runs on the chip.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 4+ years experience in high-performance network stacks (TCP, UDP, IP, NVMe over Fabrics, RoCE, ARP or RPC)
  • Ability to write correct C code quickly
  • Architectural sense
  • Self motivated, independent, detail oriented, and proactive

Additional Success Factors

  • Startup experience
  • Experience with network virtualization (vSwitch and VxLAN, NVGRE or Geneve encapsulation)
  • Experience implementing high-performance network stacks in user space/run-to-completion environments

Keywords

high-performance network stacks, TCP, IP, UDP, NVMe over Fabrics, RoCE, iWARP, RPC, vSwitch, VxLAN, NVGRE, Geneve, user space I/O, run-to-completion

Hypervisor Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement a hypervisor that runs on the chip. Another area will be performance optimizations of interfaces with existing common hypervisors.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 5+ years experience with Linux kernel
  • Experience with CPU and I/O virtualization
  • Architectural sense
  • Ability to write correct C or C++ code quickly
  • Self-motivated, independent, and proactive

Additional Success Factors

  • Experience with PCI Express Root Complex and End-Point, including SR-IOV
  • Experience with embedded processors and assembly language programming (ARM, MIPS, or PowerPC)
  • Experience bringing up hardware
  • Experience with user-mode device drivers
  • Experience with Windows driver model and IRP processing
  • Experience with security aspects of hypervisors
  • Knowledge of best methods of developing secure and trusted code
  • Startup experience

Keywords

embedded, Linux, hypervisors, CPU and I/O virtualization, PCIe, SR-IOV, microkernel, drivers, VFIO, Virtio

Linux Kernel Guru

Central to our mission is a high programmable chip. You will be the go-to person for Linux kernel questions and push the state of the art in high-performance system I/O and virtualization.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 5+ years experience in Linux kernel programming
  • Experience with I/O MMUs
  • Experience with virtual memory
  • Experience with network stacks (TCP, UDP, IP or RDMA)
  • Experience with hypervisors
  • Experience with virtual machines
  • Ability to write correct C code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience submitting changes into open source repositories
  • Experience with network virtualization (vSwitch and VxLAN, NVGRE or Geneve encapsulation), storage virtualization and PCI Express single-root I/O virtualization (SR-IOV)
  • Experience with user-mode device drivers
  • Experience with I/O stack optimizations for latency and throughput
  • Startup experience

Keywords

Linux kernel, I/O MMU, virtual memory, network stacks, storage stacks, virtualization, hypervisors, virtual machines, VFIO, Virtio

Network Management Plane Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement the Network Management Plane.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 4+ years experience in Network Management Plane software and infrastructure
  • Hands on experience in UI, network configuration, SNMP, AAA, PAM, TACACS+, show commands
  • Experience in database schema design and implementation
  • Experience in code generation
  • REST-API design and implementation
  • Ability to write correct C, C++, and Python code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • distributed database
  • Experience in GRPC, Thrift, JSON, XML
  • OpenStack plugins
  • Network visibility and debugging
  • Network management automation
  • Startup experience

Keywords

Linux, IPC, OpenStack, virtualization, TCP, socket, REDIS, MongoDB, NoSQL, Casandra, JSON, GRPC, Thrift, XML, Python, OpenConfig, Yang, NetConf, authentication, telemetry, SDN, SNMP, DHCP, Swagger, Nginx, lighttp

OpenStack Networking Software Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement OpenStack Neutron plugins that run on a data center server and communicates with our chip as well as the OpenStack orchestration layer.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 4+ years experience in writing OpenStack Neutron plugins
  • Experience with network virtualization (vSwitch and VxLAN, NVGRE or Geneve encapsulation) and PCI Express single-root I/O virtualization (SR-IOV)
  • Experience in troubleshooting large-scale deployments
  • Ability to write correct C, C++, and Python code quickly
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience with Network Function Virtualization (NFV)
  • Startup experience

Keywords

Linux, OpenStack, network virtualization, vSwitch, VxLAN, NVGRE, Geneve, Neutron, Nova, OpenContrail, Open-vSwitch, Orchestration, NFV

Secure Boot Software Engineer

Central to our mission is a highly programmable chip. Your role will be to design and implement embedded software that runs on the embedded Secure Boot Processor.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 8+ years experience in embedded RTOS
  • Ability to write correct ASM (MIPS, ARM or PPC) quickly
  • Ability to write correct C code quickly
  • Experience with delivering ROM code
  • Architectural sense
  • Self motivated, independent, and proactive

Additional Success Factors

  • Experience delivering a Secure Boot solution from architecture to production
  • Startup experience

Keywords

embedded software, Secure Boot, Secure Enclave, ASM, MIPS, ARM, PPC, ROM

Senior Engineer/Architect, Hardware Accelerators

Central to our mission is a highly programmable chip with workload-specific hardware accelerators. Your role will be to identify and define hardware accelerators, as well as to design and implement significant portions of the associated software e.g. regex compiler, functional model, etc.

Skills, Education and Experience Required

  • BS in Computer Science or equivalent degree
  • 5+ years experience with regular expression, parser, compression (Deflate, LZS, Huffman Encoding, dedup, etc.), or cryptographic algorithms (symmetric & asymmetric key algorithms, SSL/TLS protocol)
  • Strong algorithmic & data structure background
  • Architectural sense: performance vs storage tradeoff, performance vs compression ratio trade off, etc.
  • Ability to write correct C or C++ code quickly
  • Desire to push the state of the art
  • Self-motivated, independent, and proactive

Additional Success Factors

  • Experience with Embedded OS/Linux environment
  • Experience with networking & storage stack.
  • Experience with security functions related to deep packet inspection (IDS/IPS, AV,malware detection, etc.), protocol buffers, and JSON
  • Experience with emerging new loss less compression algorithms used in data centers
  • Startup experience

Keywords

embedded, Linux, networking stack, storage stack, security, DPI, deep packet inspection, DFA, NFA, PCRE, POSIX, Deflate, LZS, dedup, Huffman encoding, SSL, TLS, DES, 3DES, AES, RSA, DSA, DH, MD5, SHA, HMAC

Software Integration Engineer

Software integration is an essential component of building a data center solution. Your role will be to integrate and validate various software components into solution stacks in addition to running performance benchmarks.

Skills, Education, and Experience Required

  • BS in Computer Science or equivalent degree
  • Experience in integrating software components into new application stacks
  • Passion for developing prototypes and demos
  • Ability to program in multiple languages (Python, C, C++, Go, etc.)
  • Good understanding of Storage and Networking components and APIs
  • Familiarity with Linux, VMs and Containers
  • Self motivated, independent and proactive

Additional Success Factors

  • Excellent communication and organizational skills to collaborate and stay in sync with other team members
  • Experience with integrating open source and 3rd party software
  • Experience with running performance benchmarks
  • Startup experience

Keywords

Linux, KVM, Docker, OpenStack, NVME, TCP, Ceph, Redis, MongoDB, NoSQL, Casandra, JSON, GRPC, Thrift, XML, Python

Source Code Management Engineer

Central to our mission is a highly programmable chip and the associated software. Your role will be to build and maintain the Source Code Management (SCM) infrastructure and tools as well as administer the systems and applications that host our SCM and DevOps environments.

Skills, Education, and Experience Required

  • BS in Computer Science or equivalent degree
  • Deep understanding of software configuration management (SCM) processes and tools for agile and dynamic environment
  • In-depth knowledge and experience with Open Source tools like Subversion, Jenkins, and Git
  • Extensive experience with open source tools to support continuous integration and align with DevOps concepts, including strong capabilities for developing framework and APIs to support automation and continuous integration
  • Solid understanding of Linux administration, and a strong interest in automation and developer productivity
  • Familiarity with Jira, Github and Confluence
  • Ability to write correct python/perl code
  • Self-motivated, independent, and proactive

Additional Success Factors

  • Understanding of software development processes, and some software development experience is a plus
  • Experience installing and maintaining configuration management tools like Ansible, Chef, Puppet, or Salt
  • Familiarity with designing and deploying build infrastructure on private and public cloud platforms such as OpenStack and AWS
  • Experience programming in C
  • Startup experience

Keywords

SCM, Git, Github, Subversion, SVN, Jenkins, continuous integration, DevOps, Linux, automation, release management, scripting, Open Source tools, Python, Jira

Storage Infrastructure Engineer

Software for creating reliable, high-performance storage infrastructure in a large-scale data center environment is central to our mission. Your role will be to design and implement various aspects of the storage data plane.

Skills, Education and Experience Required

  • MS in Computer Science or equivalent degree
  • 10+ years experience in software infrastructure
  • Experience in implementing storage stacks
  • Linux system libraries for various type of communications
  • Experience with distributed systems
  • Ability to write correct C or C++ code efficiently and accurately
  • Self motivated, independent, and proactive

Additional Success Factors

  • Excellent communication and organizational skills to collaborate and stay in sync with other team members
  • Experience with design and implementation of large projects
  • Startup experience

Keywords

Linux, IPC, filesystems, storage, database, NVMe, TCP, socket, Ceph, REDIS, MongoDB, NoSQL, Casandra, JSON, GRPC, Thrift, XML, Python

Storage Stack Engineer

Central to our mission is reliable and high performance storage for large scale data centers. Your will design and implement storage stack components.

Skills, Education, and Experience Required

  • MS in Computer Science or equivalent degree
  • 10+ years experience in software infrastructure
  • Experience in implementing Storage services (e.g. NOSQL, Time Series, Document, Media)
  • Experience with distributed systems
  • Ability to write correct C or C++ code efficiently and accurately
  • Self motivated, independent and proactive

Additional Success Factors

  • Excellent communication and organizational skills to collaborate and stay in sync with other team members
  • Experience with design and implementation of large projects
  • Startup experience

Keywords

NoSQL, Time Series, KV, Filesystems, Redis, Storage, Database, NVME, TCP, Socket