Lead Software Engineer (Applications and Framework)
Join us as we enable the third wave of computing in the data center using FPGAs! Megh was founded in 2017 by Intel veterans who pioneered the adoption of FPGAs in Data Center. We’re based in Hillsboro (just outside of Portland), Oregon, and have development offices in Bangalore, India. We offer a fast-paced, exciting work environment with competitive salaries and benefits. Our startup is rapidly maturing: we won the Technology Association of Oregon’s (TAO) 2019 Technology Company of the Year award in their Pre-Revenue category. We have taken the promise of heterogeneous computing with CPU and FPGA platforms from concept to production, delivering a solution that accelerates real-time analytics using FPGA accelerators in the public, private, and edge cloud.
Megh provides a platform for accelerating Real Time Analytics using Spark Streaming and other frameworks. We enable seamless acceleration of applications that process streams with Machine Learning and Deep Learning algorithms, extracting value from data as it is moving. Our solution supports both in-line processing and offloading of ML/DL libraries with FPGAs.
This position is located in Bangalore, India.
As a Lead Software Engineer contributing to the Applications and the Frameworks Team, you will design and develop framework (e.g., TF, PyTorch) plugin libraries in C++ and Python to connect to Megh’s FPGA-accelerated platform and develop end-to-end video analytics solutions. You will be developing and integrating components that are leading edge/pre-release technologies from multiple vendors and OEMs.
To apply, send your resume to firstname.lastname@example.org.
Primary responsibilities include:
- Designing and developing reference implementations in C++ and Python for machine learning and deep learning-based solutions
- Performance monitoring, projections, bench-marking, profiling, and optimizations
- Designing and implementing software components and unit tests in C++ and Python
- Working with software architects to design and implement applications and SW infrastructure:
- With reviews at each stage to ensure integration into the larger system
- With an eye to future maintenance
- With simplicity and clarity
- Leading and mentoring a team of junior engineers
Qualifications and experience
The following qualifications are required:
- BS/MS with at least 7 years relevant experience
- Degree program in CS, CE, EE, or similar technical field
- Clear understanding of object-oriented programming concepts
- Extensive development experience in C++, Java, or Python
- Strong technical and problem-solving skills
- Strong written and verbal communications skills
- Ability to define and execute tasks with limited direction
The following qualifications are highly desirable:
- Knowledge/experience in one or more AI and machine learning frameworks, such as TensorFlow, MxNet, Pytorch, Caffe, and OpenCV
- Knowledge of design patterns
- Experience with cross language interoperability (JNI, pybind11, etc.)
- Experience with performance profiling and optimization
- Knowledge of remoting protocols (Rest API, gRPC)
- Knowledge of real-time streaming frameworks (MQTT, ZeroMQ, Kafka, AWS Kinesis, etc.)
- Familiarity with AWS services like Lambda, SageMaker, etc.