Work / Apple
Trade-in logistics: warehouse processing and an in-house shipping platform
An in-house shipping platform that replaced a third-party shipping API and cut shipping costs by about 15%, roughly $500,000 a year.
Challenge
Apple runs a device trade-in program. Customers send in their devices, which must be received, processed and forwarded, and every step involves shipping through outside delivery carriers. Shipping ran through a third-party shipping API, and cost was the main reason to replace it. On the warehouse side, each device has to be received, inspected and graded, then either moved on to a vendor or returned to the customer.
Approach
01An in-house shipping platform in place of a third-party API
A separate application, built as multiple services in Go and Ruby on Rails, connects the trade-in logistics systems to outside delivery carriers. The services communicate over Kafka. For each shipment, the platform picks the carrier programmatically, comparing price and delivery time, and generates the label. Labels, including customized labels when needed, are delivered to the warehouses that request them.
02Warehouse workflows for trade-in devices
The warehouse management service, in Ruby on Rails, handles ingesting, processing and forwarding the devices customers supply. Each device moves through receiving, inspection and grading, then on to a vendor or back to the customer. The work added logistics workflows, service integrations, error handling and a notification system, with test coverage on mission-critical order logic.
03Distributed services on Kafka, Redis and PostgreSQL
Developed and debugged distributed services using Kafka, Redis, and PostgreSQL on AWS RDS, Aurora and S3.
04Less boilerplate across Rails codebases
An internal Ruby gem for service objects removed repeated CRUD boilerplate across Rails codebases, leaving less repeated code to maintain.
Results
- Replaced a third-party shipping API with an in-house platform, cutting shipping costs by about 15%, roughly $500,000 a year.
- Labels generated and carriers selected programmatically on price and delivery time, with customized labels delivered to requesting warehouses.
- Trade-in devices tracked from receipt through inspection and grading to a vendor or back to the customer.
Capabilities
Software Engineering
- Distributed systems and event streaming with Kafka
- Carrier and logistics integrations
- Go and Ruby on Rails services
- Warehouse and order workflows with error handling and notifications
- Reliability and test coverage for mission-critical order logic
- Data: PostgreSQL on AWS RDS and Aurora, Redis, S3