Curriculum vitae

pdf version

Software Developer E-mail, Github, LinkedIn

Summary

Software developer with 10+ years of professional experience. Primary focus is on algorithms and project architecture. Main languages are Java, Kotlin and Python.

Experience

   
F. Trading Worldwide
Founder September 2020 — PRESENT

A proprietary trading lab.

   
Lyra Solar Remote
Senior software engineer July 2019 — October 2020
  • Built elasticsearch system for searching equipments for solar design.
  • Designed and developed an algorithm for maximizing the roof area available for solar panels.
  • Various contributions to help building permit packages.

Related skills: Java, Unit testing, Mocking, Spring Boot, Git, MySql, Elasticsearch, OpenAPI, Postman ITs.

   
Kapital Trading Remote
Senior software engineer August 2015 — June 2019
  • Contributed to a complex multi-threaded trading system.
  • Contributed to an open-source crypto currency library xchange-stream.

Related skills: Java, DevOps, Unit testing, Mocking, TDD, BDD, Build automation tools, MySql.

   
foat.tech Remote
Senior software engineer February 2015 — August 2015

Worked on several projects, listed some notable ones:

  • Wrote a book in the fields of computer vision and web development: [1].
  • Designed and implemented robust and fast algorithm for multiply chalkboard detection. It works in real-time and processes more than 40 HD images per second on a regular computer. The pixel precision is higher than 90%.
  • Created a Java throttling framework from scratch using Spring MVC and AspectJ.

Related skills: Java, DevOps, Unit testing, Mocking, Aspects, TDD, BDD, JavaScript, C++, Spring Framework, OpenCV, Build automation tools, Git, Computer vision, Image processing.

   
Center for Machine Perception Prague, Czech Republic
Computer vision researcher November 2014 — January 2015

Worked as a researcher and developer on a project in the field of Image rectification using vanishing lines and local affine frames. Notable achievements:

  • Designed and developed a line-annotation tool on Matlab.
  • Created a test system for vanishing points and lines detection algorithms using C++ and Matlab.
  • Improved existing vanishing points detection algorithm.

Related skills: C++, Matlab, Unix, Git, Computer vision, Image processing.

   
RoadAR Kazan, Russia
Computer vision developer July 2013 — September 2014

Worked on a RoadAR project. The application warns drivers about traffic-signs and other necessary information. Notable achievements:

  • Created a novel algorithm for traffic-sign detection and recognition, which works in real-time on mobile phones. The algorithm showed a superior performance compared to many state-of-the-art approaches. The algorithm is implemented on C++.
  • Designed a test system using Java for the traffic-sign detection algorithm.

Related skills: C++, Java, OpenCV, Unit testing, PostgreSQL, Swing, Maven, Android NDK, Boost library, CMake, Git, Computer vision, Image processing, Machine learning.

   
Digital Zone Kazan, Russia
Senior software developer April 2013 — July 2013
  • Managed a small team on a mobile version of ulmart.ru website.
  • Conducted technical interviews.

Related skills: Java, MySQL, Spring MVC, Apache Solr, JavaScript, Application servers, Freemarker, Git, Maven.

   
Digital Zone Kazan, Russia
Software developer September 2011 — April 2013

Developed complex services for several high-loaded websites. Mostly worked on ulmart.ru project. Notable achievements related to this website:

  • Built a search platform based on Apache Solr.
  • Created an asynchronous catalog of goods using JavaScript and Spring MVC.
  • Designed and implemented a new database. This helped to remove several bottlenecks and improve the website performance.

Related skills: Java, GWT, DevOps, Spring MVC, MySQL, EJB, Apache Solr, JavaScript, Application servers, Freemarker, Version control, Build automation tools.

Education

   
Kazan Federal University Kazan, Russia
MSc in Computer Science 2012 — 2014
advisor: Evgeny Stolov  

Fields of interest: computer vision and image processing. Master thesis:

  • 3D scene reconstruction from a single view. Resulted in a paper called Surface Prediction for a Single Image of Urban Scenes. It was presented in Singapore in 2014 on the SUAS 2014 workshop. The article itself was published in 2015: [2].

Related skills: Matlab, C++, TeX, Computer vision, Image processing.

   
Kazan Federal University Kazan, Russia
BSc in Computer Science 2008 — 2012
advisors: Evgeny Stolov; Aleksandr Shlyannikov  

Fields of interest: computer vision and image processing, machine learning, web development. Projects:

  • Handwritten digit recognition using Java.
  • E-library using GWT.

Related skills: Java, JEE, GWT, Computer vision, Image processing, Machine learning.

It & programming skills

Main languages Java, Kotlin
Data analysis Python, Matlab, R
Scripting languages Shell script, JavaScript
Markup languages XML, JSON, HTML, CSS
Query languages SQL
Application and web servers JBoss, Tomcat, Jetty
Revision control Git, Subversion
Build tools Maven, Gradle, CMake, SBT
Systems on administration level OS X, Linux
Other Scala, C++, Spring Framework, Play framework, OpenCV, Swing, Android NDK, MySQL, PostgreSQL, TDD, BDD
Digital typesetting TeX, LaTeX

Languages

Russian native speaker
English professional proficiency

Publications

[1] F. Akhmadeev, Computer Vision for the Web. Packt Publishing, 2015. [link]

[2] F. Akhmadeev, “Surface prediction for a single image of urban scenes.” [link], [poster]
Workshop on Scene Understanding for Autonomous Systems (ACCV Workshops), ACCV 2014.