Objective

A software developer position.

Highlights

  • A software developer with a wide range of expertise, from embedded systems to front and backend Web and native GUI development.
  • Current emphasis on Web technologies using JVM languages. Comfortable with the frontend Web development. Full stack development experience. Geospatial front and backend experience.
  • Keywords: Java, Python, C, C++, JavaScript, geospatial, Web backend, Web frontend, Spring, Swing, Android, Linux, GUI, embedded systems, jQuery, Backbone, Bootstrap, Docker, AWS, PostgreSQL, Spark, HDFS, Hadoop, Cassandra.
  • An expert UNIX engineer.
  • A proficient network engineer.
  • A proficient performance engineer.

Work Experience

May 2016 - Present. Uber. Senior Software Engineer.

A software developer working on the Uber mapping platform.

A few projects that I have completed in this role:

  • I am currently working on a custom geospatial database based on Apache Cassandra. I have created a publish-subscribe framework for the update notifications. Developed a push notifications framework and a UI for visualizing updates on a map.
  • I have built out a continuous integration/continuous deployment pipeline for the team products.
  • I have developed from the ground up an application to support a reliable ingest of imagery and metadata collected by the car-mounted sensors in the field into a cluster based distributed filesystem. The application uses a RESTful backend and Web frontend (Java, Jersey, Backbone.js, Bootstrap, HDFS, Spark). The functionality of the application can be summarized as an "Ingest Operator Workstation".
  • I have developed a number of Spark cluster based jobs to mutate the ingested data.
  • I have refactored, implemented and assumed ownership of a Maven based CI build for the existing code base.
  • I have been working with junior team members in the advisory role on a number of other projects.

February 2012 - May 2016. DigitalGlobe. Senior Staff Software Engineer.

A software developer working on a satellite imagery processing and Web delivery platform.

A few projects that I have completed in this role:

  • Developed a highly scalable and reliable backend processing architecture used throughout the organization.
  • Designed and developed a satellite imagery order processing system. Provided technical leadership to a team.
  • Performed a major refactoring and development of an internal satellite imagery processing workflow to enable massively larger workloads.
  • Led development of a client SDK for a Geospatial Big Data product.

As a senior software developer I have also:

  • Initiated the use of Liquibase in the organization which helped solve numerous database development and deployment problems.
  • Won two organization-wide hackathons.
  • Championed a number of software development best practices.

October 2005 - February 2012. Seagate Technology. Staff Software Engineer.

Architected and played leading role in the development of a hard disk drive testing platform. The platform supported a wide variety of ARM and Intel based hardware with Ethernet and USB connectivity. The platform used client-server architecture with custom embedded Linux running on the target hardware, generic Linux distribution running on servers, and Windows running on client desktops. The platform was deployed on hundreds of HDD test stations in Seagate factories and design centers.

Some of the highlights of this effort:

  • Provided a vision and architected the application as a whole.
  • Developed the host server layer (Java).
  • Developed the GUI client (Java/Swing).
  • Developed a number of Web applications for test data access and management (Java/Servlets/MVC).
  • Developed software modules interfacing with a variety of hardware devices, such as environmental controllers, power system simulators, power margin cards, error injection boards, etc. (Java).
  • Developed the embedded target software (Python).
  • Created a custom Linux distribution for both embedded target hardware platforms (Intel and ARM).
  • Completed ARM Linux kernel port to a proprietary embedded board (XScale IOP321, ARM Linux 2.6, C).
  • Developed Linux kernel drivers for embedded Linux on ARM platform (C).
  • Created and supported continuous integration and delivery infrastructure.

March 1999 - October 2005. Electronic Data Systems. Software Engineer.

Software developer and systems engineer. Some of my projects included:

  • Developed a number of tools for synchronizing account information between multiple identity management systems.
  • Developed a Web-based frontend for LDAP-based identity management system.
  • Developed a reporting suite for an enterprise backup application.

Institute of Applied Astronomy of Russian Academy of Sciences. Scientific Researcher.

Scientific researcher and software developer for a team processing Very Long Base Interferometry (VLBI, radiotelescopes) observational data.

Education

St. Petersburg State University, St. Petersburg, Russia.

Department of Mathematics and Mathematical Physics.

Masters Degree in Physics. Graduated with Honors.

Source Code

Contact Information

Phone: 720-938-5489
E-mail: anton@solovyev.com