Software engineer and technical lead with professional experience in a wide range of domains: security, embedded, desktop, mobile, scalable web services, and others, across multiple platforms and many languages. Interested in solving hard problems. Feel free to contact me directly at alex [at] codereversing [dot] com
Experience
2022 — Now
2022 — Now
New York, New York, United States
2019 — 2021
2019 — 2021
New York City Metropolitan Area
In this role, I was responsible for end-to-end design and implementation of various components of the Walmart.com back-end search engine. These ranged from product features to architectural-level changes across the entire search back-end.
One major accomplishment was spearheading the development and integration of Walmart's "Retail Graph" into the core search engine. The Retail Graph is a knowledge graph that captures connections between products and entities in Walmart's catalog, with the aim of improving search relevance. This was a large-scale project that touched all facets of the search engine, from the front-end UI to the back-end data pipelines. My contribution involved leading the back-end implementation to change our query understanding, ranking and refinement algorithms, and data schemas to use the Retail Graph for query search results.
My work then moved to infrastructure improvements for the entire search platform. These improvements involved enhancing reliability and reducing cost by migrating our caching layers to use Redis. This was a greenfield project to implement a scalable and high-availability Redis client for our generic caching API. My work involved the full creation, development, and testing of this Redis client, as well as integrating this client into multiple back-end services and data pipelines.
Other improvements involved the creation and integration of new microservices into the search ecosystem, with the goal of increasing engineer productivity and deployment time to production. Specifically, my role was to develop a new CI/CD platform that integrated with KServe in order to allow machine learning engineers to quickly test and deploy their models, with the goal of reducing time to production from up to several weeks to within a day.
Key Languages/Technologies:
• Java, Python
• Azure, Cosmos DB, Couchbase, Grafana, Kafka, Kibana, KServe (PyTorch, ONNX, Tensorflow), Kubernetes, Neo4j, Redis, Solr, Spring
2016 — 2019
Princeton, New Jersey, United States
Engineering leadership role where I worked as a senior software engineer and engineering manager. Major accomplishments included leading the creation and implementation of a scalable web service in C# (WCF) that handled tens of millions of requests per day to serve real-time traffic information to users. The successful deployment of this service allowed other Trimble MAPS products to integrate with it and became a big selling point to new customers.
Other tech responsibilities included performance profiling for bottlenecks and optimizing the core code base to be more performant and scalable. This was done through direct code changes, through a better choice of algorithms, or through clever uses of caching to achieve the best performance.
The scope of the role encompassed the full technology stack; I performed development on the C++ desktop/mobile applications, the C# back-end servers that they communicated with, and the SQL database that the server talked to. My work was also been cross-domain, where I have developed internal diagnostic tools and load tests for the Quality Assurance team.
Leadership responsibilities included regularly performing code reviews, participating in architecture discussions, and guiding feature development for a team of engineers.
Key Languages/Technologies:
• C, C++, C#, SQL
• .NET Platform, AWS, Redis, WCF, multi-threaded development, performance profiling, scalable web services, load testing (JMeter, SoapUI)
2015 — 2016
2015 — 2016
Greater Philadelphia
I worked as an embedded software engineer writing driver code targeting the Integrity real-time kernel to provide robust data transfer between primary and supervisory controllers over fault tolerant ethernet. The data was responsible for maintaining a consistent and identical memory state between the two controllers.
A secondary project involved porting a proprietary communications protocol to an embedded Linux environment running on a Xilinx ARM processor.
Key Languages/Technologies:
• C, C++
• Linux driver development, Xilinx cross compilers, gdb, hardware analyzers, DMAs
2013 — 2015
2013 — 2015
Princeton, New Jersey, United States
I worked primarily as a C++ software engineer on the CoPilot Truck GPS navigation software targeting desktop and embedded platforms. While working on this product my role was to add new customer features and to improve the stability of the existing code base by performing bug fixes, adding unit tests, and profiling performance.
Key Languages/Technologies
• C, C++, C#
• Visual Studio, Windows Embedded, Remote debugging, Multi-threading
Education
Georgia Institute of Technology
Master of Science - MS
2017 — 2019
Penn State University
Bachelor of Science - BS
2007 — 2011