Avatar for CynLr

Robots with Visual Object Intelligence

Algorithms Engineer - ML, Machine Vision

₹15L - ₹20L • 0.1% - 0.25%
Apply now
If you don’t have sufficient work experience but you think you can do justice to the requirements, Do apply.

ABOUT THE ROLE


Requirements:

• Strong understanding of Machine Learning fundamentals and ML tools.
• Must be adept with modelling/creating new Machine Learning Models/Architectures from scratch.
• Strong Machine Vision and Image Processing background. Knowledge of Control Systems is a plus (linear algebra is assumed).
• Must be able to comfortably classify and identify the limitations, evolution and necessities/advantages of different ML models.
• Strong penchant for parameterizing a problem with System & Process level thinking and understanding. (Should be able to differentiate between both and understand the need & impact of both).
• Good C++ Skillset (Python is assumed).
• Familiar with processes associated towards delivering a fully functional, reliable & working product (not just lab prototypes/PoCs).
• Adequate fluency with GPU based application development. Knowledge of CUDA (Excellence is not necessary).
• Adequate experience in translating and optimizing algorithms specific to DSP (under which Image Processing is included) and/or Neural Net Architectures. (At least one is needed).
• Adept with building test frameworks for code.
• Must have a strong inclination for documentation and code readability.


Understanding and Knowledge:
(Experience is not a must but a plus)

1. ML architectures.
2. Digital image processing & machine vision.
3. CPU architectures.
4. GPU architectures, CUDA.
5. Basic design patterns.
6. Memory architectures and optimizations.
7. Algo optimizations


Tools:

1. C++
2. CUDA
3. cuDNN/other ML tools
4. Computer Vision Libraries


Team Structure:

There will be 4 single member teams to start with –Algo Team, GPU Team, SW Dev Team & HW Team. Members of other teams will be passive members of each team apart from the team they lead. The Algo Team will provide the DNN & Vision algorithms, while the GPU Team will provide the GPU optimizations for the algos, HW team will provide the HW integration and SW team with translate GPU optimized algos into SW blocks. Each team will split the implementation among other teams and guide them through the implementation. Every team member will be a passive member of all other teams.


What will you do?

The problem we are solving is to build a system capable of visually understanding a random clutter of known objects, select the ideal object for picking and be able to guide a robotic arm to pick that particular object, orient and place it in the expected form with allowable failure not more than 1 in 10000 attempts. All of this is to be performed within a couple of seconds.
Now the system has a process level algorithm and component level algorithms to be developed. While the earlier needs strong control system understanding, the later involves multiple domains – Machine Vision, Machine Learning, Motion control, Optics, etc. It is expected that there will be considerable learning on these domains and you should be comfortable in doing the same.

Your key contribution will be towards building the Re-inforcement learning sequence and formulating the DNN frameworks customized to the perception need in every stage of re-inforcement learning. An understanding of the overall process and a strong understanding of Machine Vision principles (not just computer vision) is essential.


How will you Do?

You have complete freedom here, but you will be subjected to reviews. Since, this is a startup and the product is not yet well-defined, you would be the one with the responsibility of defining it. Expect things to be not orderly and requirements to not be solid. Part of your design effort largely involves requirements building too and developing architectures that are agnostic to such requirement changes. The algorithm part of the product significantly evolves as per your thought process and will hence forth carry your signature in it.

You must be very comfortable with building your own NN models from scratch. C++ will be language used for all programming. You will also double as a software developer to implement the algorithms into code.

You will also be building a team as the product evolves to maintain and develop further. Though confined to a focused area, the work is pretty much expected to be entrepreneurial with the exact advantages and difficulties of a startup.

Meet your team

People you would work with in this role

Gokul N A

Avatar for Gokul N A
Founder & CTO @CynLr ; Past - Machine Vision, Embedded & RF specialist @National Instruments
Co-founder & CEO @CynLr • Worked at @National Instruments

More jobs at CynLr

View all jobs

Software Engineer - C++

Apply now