R&D Lead Engineer2013 - PRESENTMotionDSP
- Managed the R&D division of the company. Monitored all major R&D projects, reported on progress, and provided technical guidance to keep on track.
- Worked closely with other researchers on design, implementation, and optimization of the algorithms.
- Envisioned an algorithm for creating mosaic images from surveillance footage or sets of aerial images. Guided the team to successful implementation of the algorithm.
- Successfully modernized the code base by porting it to C++11. Made code more secure and less prone to errors and memory leaks.
- Established coding style guidelines and introduced good programming practices to the team, including pair programming, code reviews, and supported teamwork.
R&D Engineer - Sr. Software Engineer2008 - 2013MotionDSP
Technologies: C++, CUDA, OpenCL
- Improved the current multi-frame super-resolution algorithm by making it resilient to ghosting effects present at the time.
- Ported most of company's video processing algorithms to CUDA, including super-resolution, de-blurring, contrast enhancement, frame-rate adjustment, and more.
- Optimized all above mentioned algorithms and enabled real-time performance.
- Created a testing framework for video processing algorithms to ensure successful regression testing under change.
- Ported an extremely challenging MSER feature detector to CUDA (filed a patent).
- Created a RAII-based GPU memory management system which hides memory allocation latency and enables even more performance.
Junior Researcher2007 - 2008Deutsche Telekom Laboratories
- Researched in the field of computer vision on the problems of real-time human head pose estimation.
Software Development Intern2005 - 2005Faculty of Electronic Enegineering, University of Nis
Technologies: C++, OpenGL
- Developed a 3D graphics engine for massive landscape rendering in C++ and OpenGL. The engine was able to render gigabytes of terrain texture data in real time by automatically adjusting level of detail on per frame basis.