Software Engineer
FastenalJul, 2020 - Present4 yr 11 months
Project1 - SOAP to REST APIs Integration Led a team of 3 members in transitioning from SOAP to RESTful APIs, resolving inter-team discrepancies and delivering the project ahead of schedule. Managed project tasks by creating and assigning Jira tickets, ensuring consistent workflow and productivity for all team members. Successfully improved performance and maintainability by transitioning the consumption of APIs from SOAP to RESTful services.Project2 - Vendor Data Visibility Integrated APIs to display distances between vendor sites and Fastenal stores, vendor locations, and estimated arrival dates for parts, improving logistical planning and efficiency. Developed a robust cron job to retrieve and process approximately 12 million vendor details and prices daily, centralizing data in a main database and synchronizing it with 3,000 branches. Leveraged Kafka events to handle vendor order acknowledgements, significantly enhancing data accuracy and timeliness across the system.Project3 - Payment Gateway Replacement I played a key role in transitioning the point-of-sale (POS) application to a new payment gateway where I handled all the credit card machine integration. The payment software development kit (SDK) was set up as a Windows service, and application communicated with gateway and credit card machines through service via sockets. The application has been upgraded to support two different payment gateways,implemented code using design patterns such as strategy, factory, and Command Query Responsibility Segregation (CQRS). Programmed a message processor to read post auth credentials from different system from kafka topic This gateway is crucial as it handles the processing of 33 million USD in revenue through credit card transactions every month.Project4 - Sybase to Oracle DB Migration. I successfully migrated the database layer from Sybase to Oracle, completing the task ahead of schedule, and I also provided substantial support to my colleagues during the process. Migrated many crystal reports, stored procedures and inline queries from sybase to oracle. I restructured the lengthy end-of-day process into a console application that sends financial and inventory data to the finance team, utilizing the command pattern to enhance efficiency.