Work
HIGHPrint-service provider12/2012–05/2016
End-to-End Web-to-Print Order Automation
Developer, architect and team lead; primary implementation owner
PHPMySQLJavaScriptNode.jsRedisMongoDBC# (wider role stack)
Problem
A print business wanted customers to upload their own designs and order prints online. Before this, orders took a lot of manual work between the order and the printing press. The business needed a system that handled an order from the first click to the shipping.
Approach
- I was the only developer on this project, and I kept working on it for several years.
- I took over an existing system that needed a lot of repair work. I fixed it first and then built on it.
- I built the website where customers upload their files and place an order.
- I wrote the price calculation from scratch, so it matched how the business really priced its prints.
- I connected the orders to the production process, so they reached the printing press and the people working there without anyone typing them in again.
- I added automatic status updates, so customers knew where their order was.
Architecture and design decisions
- I built the platform in PHP with a MySQL database.
- I wrote a REST API for the parts of the system that needed to talk to each other.
- I added a Redis cache in front of the slow parts to keep the site fast.
- The order moves through one pipeline, from the upload to the printing press to the shipping. Each step updates the order status.
Reliability and performance
- I repaired the inherited code until the system ran steadily.
Outcomes
- The process from order to shipping became automated.
- Productivity went up by 50%.
- Customers got automatic status updates without anyone writing to them.
- The business had one custom price calculation that it could trust.
Known gaps
- The 50% figure is the one I recorded for the whole process. I do not know exactly how it was measured.
- I have no numbers on how many orders the system handled or how many customers used it.
- I do not describe how the printing press was connected or what format the orders had.
- The page does not cover payment, security or uptime.
- I do not know if the system still runs today.