If you like to work hard, thrive on solving stimulating problems, and want to join an industry-leading team of ASIC and FPGA specialists, we want to hear from you

Why work with us?
We are a well-respected company with a highly skilled team
We care about our employees and offer them competitive compensation
We work with interesting companies on challenging projects
We’re looking to expand our world-class team
ASIC/FPGA Verification Specialist
Duties and Responsibilities

The ASIC/FPGA Specialist will work in an exciting team environment and will have the following responsibilities:

  • Priming the verification activities for a block or an entire chip.
  • Architecting the verification environment using OVM and writing the associated documentation.
  • Participating in the test case writing activity.
  • Using constrained random verification approaches when possible.
  • Using direct test cases to support lab bring-up.
  • Performing code coverage and functional coverage

Requirements

  • A minimum of 8 years of relevant experience in ASIC/FPGA Verification.
  • Familiarity with System Verilog, OVM/UVM, Verilog (mainly), VHDL, and scripting languages.
  • Familiarity with SONET, OTN, Ethernet, PCIe.
  • Familiarity with constrained verification techniques, assertions and functional coverage.
  • Excellent communication skills.

 

ASIC/FPGA Designer
Duties and Responsibilities

The ASIC/FPGA Designer will work in an exciting team environment and will have the following responsibilities:

  • Understanding high-level requirements and translating them into a detailed design specification documents.
  • Writing RTL (mainly Verilog or System Verilog), run block-level simulation, FPGA backend or ASIC synthesis, DFT insertion, timing closure.
  • Performing lab bring-up, product integration and support.
  • Interfacing with the verification team, hardware team and support team.

Requirements

  • A minimum of 6 years of relevant experience in the ASIC/FPGA design field
  • Strong RTL coding skills
  • Strong scripting skills
  • Familiar with SONET, OTN, Ethernet, PCIe
  • Excellent ability to work in a team
  • Experience with System Verilog would be an asset
  • Experience with SoC design would be an asset
  • Software background would be an asset
Embedded Software Designer – Machine Learning and ADAS

Duties and Responsibilities

The Embedded Software Designer will interact with hardware and system groups to work on the latest technology. They will have the following responsibilities:

  • Specification and development of embedded software for use in Linux or RTOS environments and standalone products
  • Design and implementation of embedded software for SOC-based hardware controlor end-user applications in Automotive or other Machine Vision and Deep Learning applications

Requirements

This position requires a dynamic embedded software designer who is a fast learner and is eager to apply their skills working with the latest SOC or system technology:

  • A minimum of an Bachelor’s Degree in Computer Science, Computer or Electrical Engineering, Master’s preferred
  • A minimum of 3 years of relevant experience
  • Experience developing complex C++ applications required. Perl or Python also preferred
  • Experience with embedded development in a Linux or RTOS environment
  • Experience with complex algorithms and data structures
  • Experience with optimizing performance of embedded software
  • Experience with modern ARM embedded processors, GPU/SIMD processor programming preferred
  • Experience with standard interfaces e.g. Ethernet, PCIe, SPI, I2C, GPIO, CAN preferred
  • Work or Master’s research/project experience in one or more of the following:
    • Graphics, video processing, codecs, cameras, GPUs
    • Computer vision, machine learning
    • Advanced Driver’s Assistance System (ADAS)
Software Designer – Networking

Duties and Responsibilities

The Networking Software Designer will interact with hardware and system groups to work on the latest technology. They will have the following responsibilities:

  • Specification and development in embedded Linux or VxWorks environments
  • Design, coding, testing and maintenance in C/C++
  • Development of L2/L3 networking control plane software for optical transport equipment

Requirements

This position requires a dynamic software designer who is a fast learner and is eager to apply their skills working with the latest software and system technology:

  • A minimum of an undergraduate degree in Computer Science, Computer or Electrical Engineering or an equivalent combination of skills and experience
  • A minimum of 8-10 years of relevant experience
  • Experience developing complex C++ applications required.
  • Experience with embedded development in embedded Linux or VxWorks environment
  • Experience with complex algorithms and data structures
  • Experience with optimizing performance of embedded software
  • Experience with L2/L3 networking control plane and routing software development for optical transport equipment, switches or routers
  • Experience in several of the following areas:
    • Protocols: IP: BGP, IS-IS, OSPF; MPLS: LDP, RSVP-TE, BGP-LU
    • Networking applications: Segment routing, seamless MPLS, L2 VPN, L3 VPN