Kevin Conaway
Engineer. Problem Solver. BBQ Enthusiast
kevin.a.conaway@gmail.com
https://github.com/kevinconaway
https://www.linkedin.com/in/kevinaconaway
Experience
Walmart Labs, Reston VA
Staff Software Engineer - 11/2017 to Present
Promoted to Staff Software Engineer (previously called Technical Expert/Engineer).
In my new role, I continued to design and implement cloud native systems that solve problems for our stores and clubs at Walmart scale while also helping to grow our team externally through recruiting and internally through technical leadership and mentorship
Highlights:
- Built a streaming data pipeline to get near real time events for orders across chain in the US, UK, and China (Kafka, Storm)
- Built a service to provide near real time aggregated sales analytics. This allowed associates in the stores to analyze sales, cost and profit in their store, and similar stores, from their mobile devices (Kafka, Druid, Ceph, Hadoop)
- Created Spark workflows to organize our streaming data in to Parquet based Hive tables (Flume, Spark, Oozie, Parquet, Hive)
- Streamed order data in to Elasticsearch to enable ad hoc analysis and visualizations of all items sold and returned across chain (Kafka, Storm, Elasticsearch)
Senior Software Developer - 1/2016 to 11/2017
Part of the cloud store systems team that is helping Walmart power their stores and clubs with cloud native solutions based on next-gen architectures, technologies and development practices
While at Walmart, I designed and built a number of streaming data systems with a focus on high availability, fault tolerance, and operational excellence. My teams main focus was taking streaming sales data from all of our stores and clubs and making it usable for both technical and non-technical users across the business.
Some other non technical highlights:
- Heavily involved in recruiting, hiring and mentoring talent for our team.
- Spoke at Elastic{ON} 2017 on how Elastic + Kibana enabled our business users to solve real problems with near real time exploratory analytics
Zoomdata, Reston VA
Senior Software Engineer - 1/2015 to 12/2015
Member of the technical staff responsible for a variety of tasks.
- Designed and implemented a versioned, backwards-compatible, maintainable, public facing REST API for customers to integrate with
- Helped initiate the feat of moving away from a monolithic web application and towards a micro-service architecture based on Spring Boot
- Led an effort to improve our CI build times by parallelizing parts of our build as well as our unit and integration tests
Jive Software, Portland OR (Remote)
Staff Engineer, Professional Services - 3/2010 to 1/2015
Over 4.5 years of “swiss army” engineering building product customizations and integrations.
- Built customizations, integrations, data migrations and single sign on implementations using both Java and NodeJS
- Multiple customer site visits for solution consulting, on premise installations and performance/architecture review
- Spoke at JiveWorld, our annual customer conference, 3 separate times (2010, 2012, 2014) on various application development topics.
- Promoted to Staff Engineer in January 2014 to provide more technical leadership and mentoring to our team.
- Authored multiple extensions to the core platform that generated millions of dollars in annual contract value (ACV)
- Worked as a remote employee which required independence, reliability, discipline, and good communication skills.
Solers Inc, Arlington VA
Senior Software Engineer - 9/2007 to 3/2010
Lead the development for NCES Messaging, a SOA based WS-Eventing implementation built with Apache CXF and Sonic MQ. During this project the entire code base was re-written to provide additional reliability and scalability over the existing implementation. Responsibilities included:
- Managing the development effort for the project to include design and prototype development, unit and integration testing and system testing and production roll out.
- Architecting and developing the multi-threaded core messaging engine that utilizes Java’s high level concurrency primitives such as Executors, BlockingQueues, ConcurrentMaps and Locks
- Creating a secure management tool leveraging a custom DSL utilizing JMX, SSL and Beanshell (JSR 274)
- Adding clustering and fail over capabilities using JGroups for leader election and cluster membership and EhCache for distributed data caching at each messaging node.
- Extensive application and system profiling to meet stringent performance guidelines set by the customer.
Lead developer for Enterprise File Delivery (EFD). EFD is multi-protocol (HTTPS/FTP) file and directory replication service that scales to multi-million file sets and includes an RIA user interface for configuration and use of the service. Responsibilities included:
- A public management API using REST (Restlet). This API was made available to other system integrators to enable customization of the system along with providing the interface between the RIA user interface and backend processing engine.
- A high performance audit and event log using AspectJ, custom Java annotations and Apache Lucene
Building an RIA front end using DWR and ExtJS
Lead the development of the Web Services Notification (WSN) application for DISA’s Joint User Messaging system. WSN is a rich internet application to enable users to build and manage WYSIWYG message templates and publish messages from those templates to JUM’s WS-Notification based messaging system
Bearingpoint, Mclean VA
Consultant - 6/2004 to 8/2007
Lead developer for the implementation of the Federal Financial Report (FFR) module on the Fastlane grants management system at the National Science Foundation (NSF). FFR is a Struts based application with a Sybase backend which is deployed on a Sun One application server. It was built and tested using Maven 2.
Part of development team for the National Oceanic and Atmospheric Association (NOAA) Grants Online system. Grants Online is a full life cycle grants management system handling application receipt through grant close out. It was developed using J2EE technologies and involves complex review and approval process as part of the grants processing workflow. It is deployed on BEA WebLogic. My responsibilities included building and maintaining new modules from start to finish by designing JSPs and custom tag libraries, writing page flows and backend data structures and tying it all together with stored procedures.
Skills
I’ve used a number of different tools and technologies over the years. Below are the most recent:
- Java, Golang, Python
- Continuous Integration, Gitflow, Unit & Integration Testing
- Distributed Systems (Elasticsearch, Cassandra, Druid)
- Stream Processing (Apache Kafka & Apache Storm)
- Hadoop (Spark on Yarn, Oozie, Parquet)
- Traditional RDBMS/SQL (MySQL, PostgreSQL and Oracle)
- Cloud Storage (Azure Object Storage, Openstack Ceph)
- Local Storage (RocksDB)
- REST Services (Spring Boot)
- Metrics & Monitoring (Dropwizard Metrics, Graphite, Grafana)
- Node.js
Education
Bachelor of Science in Computer Science from Saint Joseph’s University, Philadelphia PA. Graduated in 2004.