Software Engineer II (Applications and Framework)
Join us in building the best-in-class real-time analytics platform for creating actionable insights from streaming data.
Founded in 2017 by Intel veterans who pioneered adoption of FPGAs in data center, Megh Computing has taken the promise of heterogeneous computing from concept to production. 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.
Megh won the Technology Association of Oregon’s (TAO) 2019 Technology Company of the Year award in their pre-revenue category.
We are focused on providing a real-time, AI-based video analytics solution that can be deployed on any platform using CPUs, GPUs, or FPGAs, from edge-to-cloud. Megh’s solution automates the use of video as a signal for real-time, actionable insights in verticals like smart buildings and factories, creating business value for enterprise customers.
To apply, send your resume to firstname.lastname@example.org.
This position is located in Bangalore, India.
As a Software Engineer II contributing to the Applications and the Frameworks Team, you will design and develop plugin libraries in C++ and Python to build end-to-end streaming analytics solutions on hardware-accelerated platforms (GPU, FPGA, etc.). You will develop and integrate leading edge/pre-release components from multiple vendors and OEMs.
Primary responsibilities include:
- Design and develop reference implementations in C++ and Python for machine learning- and deep learning-based solutions
- Participate in performance monitoring, projections, benchmarking, profiling, and optimization
- Design and implement software components and unit tests in C++/Python
- Work with software architects to design and implement applications and SW infrastructure that is simple and clear, and with an eye to future maintenance
- Provide oversight and assistance to junior team members
Qualifications and experience
The following qualifications are required:
- BS/MS with 1-3 years relevant experience
- Degree program in CS, CE, EE, or similar technical field
- Clear understanding of object-oriented programming concepts
- Extensive experience with 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
- Ability to provide effective technical design and development oversight
- Ability to provide technical guidance and assistance to junior team members
The following qualifications are highly desirable:
- Knowledge/experience in one or more of the AI and machine learnings frameworks such as TensorFlow, Keras, Pytorch, Caffe, MxNet, and OpenCV
- Knowledge of design patterns
- Experience with cross-language interoperability (pybind11, cython, JNI, etc.)
- Understanding of containers (Docker, Dockerhub, Kubernetes, etc.), hypervisors, and other virtualization technologies
- 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.