Parallel Programming Application Developer for FPGAs

  • location: Hudson, MA
  • type: Contract
  • salary: $60 - $63 per hour
easy apply

job description

Parallel Programming Application Developer for FPGAs

job summary:
We have a 6 month contract opportunity for a Parallel Programming Application Developer for FPGAs (Parallel Programming, OpenCL, Tensorflow) in Hudson, MA.

The candidate will develop parallel applications on Altera FPGA, benchmark and identify potential bottlenecks between the host application and the device kernel(s) or in the kernels.

The candidate will implement application prototypes and advanced concepts in OpenCL as well as parallelize OpenCL applications using the concept of pipelining to use several FPGAs.

The candidate will:

1. Develop and implement prototype OpenCL programs and advanced concepts working with or under the guidance of architects.

2. Implement and parallelize OpenCL applications to use several FPGAs using the concept of pipelining.

3. Enable an existing Deep Learning framework such as Tensorflow to take advantage of parallel concepts.

4. Perform benchmarking of applications as well as debug potential performance bottlenecks and optimize applications as needed.

 
location: Hudson, Massachusetts
job type: Contract
salary: $60 - 63 per hour
work hours: 8am to 5pm
education: Bachelors
 
responsibilities:
The candidate will develop parallel applications on Altera FPGA, benchmark and identify potential bottlenecks between the host application and the device kernel(s) or in the kernels.

The candidate will implement application prototypes and advanced concepts in OpenCL as well as parallelize OpenCL applications using the concept of pipelining to use several FPGAs.

The candidate will:

1. Develop and implement prototype OpenCL programs and advanced concepts working with or under the guidance of architects.

2. Implement and parallelize OpenCL applications to use several FPGAs using the concept of pipelining.

3. Enable an existing Deep Learning framework such as Tensorflow to take advantage of parallel concepts.

4. Perform benchmarking of applications as well as debug potential performance bottlenecks and optimize applications as needed.

 
qualifications:
EDUCATION REQUIREMENTS:

Preferred - Masters Degree or higher in Computer/Electrican Engineering

Acceptable alternates:

Bachelor's degree with at least 5-7 solid years in the skills needed

PhD - new college grad with experience in the skills needed.

REQUIRED SKILLS

#1 Proficient at developing parallel applications or algorithms (e.g. ScalaPack etc.) with MPI and OpenMP from "scratch" or the beginning. Must know how it works and how to problem solve, debug and fix any issues

#2 In-depth familiarity with AI and DL (Deep Learning)

#3 Experience with Tensorflow including as a user, developer, etc. Good understanding of Training and Inference algorithms as well of communication patterns in the various graph e.g. Alexnet, ResNet50.

DESIRED SKILLS

- Experience in all aspects of developing OpenCL programs for FPGAs (e.g. debugging, profiling, performance optimization, etc.) - If candidate has MPI and OpenMP then OpenCL can be trained

- In-depth familiarity with Altera FPGAs and toolset. - Nice to have

- C/C++ is desired

- Team working skills

- Good communication and interpersonal skills

- Hands-on candidate needed

*The work day starts between 8 and 9am. No exceptions

 
skills: EDUCATION REQUIREMENTS:

Preferred - Masters Degree or higher in Computer/Electrican Engineering

Acceptable alternates:

Bachelor's degree with at least 5-7 solid years in the skills needed

PhD - new college grad with experience in the skills needed.

REQUIRED SKILLS

#1 Proficient at developing parallel applications or algorithms (e.g. ScalaPack etc.) with MPI and OpenMP from "scratch" or the beginning. Must know how it works and how to problem solve, debug and fix any issues

#2 In-depth familiarity with AI and DL (Deep Learning)

#3 Experience with Tensorflow including as a user, developer, etc. Good understanding of Training and Inference algorithms as well of communication patterns in the various graph e.g. Alexnet, ResNet50.

DESIRED SKILLS

- Experience in all aspects of developing OpenCL programs for FPGAs (e.g. debugging, profiling, performance optimization, etc.) - If candidate has MPI and OpenMP then OpenCL can be trained

- In-depth familiarity with Altera FPGAs and toolset. - Nice to have

- C/C++ is desired

- Team working skills

- Good communication and interpersonal skills

- Hands-on candidate needed

*The work day starts between 8 and 9am. No exceptions


Equal Opportunity Employer: Race, Color, Religion, Sex, Sexual Orientation, Gender Identity, National Origin, Age, Genetic Information, Disability, Protected Veteran Status, or any other legally protected group status.

easy apply

get jobs in your inbox.

sign up
{{returnMsg}}

related jobs

    Diagnostics Engineer

  • location: Framingham, MA
  • job type: Temporary
  • salary: $40 - $80 per hour
  • date posted: 11/30/2018


    Systems Engineer

  • location: Norwood, MA
  • job type: Contract
  • salary: $60 - $70 per hour
  • date posted: 10/5/2018