An unorthodox software engineer who doesn't always adhere to processes or conventional thinking. Results-oriented, valuing delivery and creativity over experience. Open-minded and not fixated on being right or wrong, with a strong appreciation for open communication.
A husband and father of two. Enjoys hiking, beer, food, traveling, anime, and everything in between.
Lead Software Engineer
2024-12-01 - Present
Projects
Workflows - Agent builder with multi-LLM support, workflow orchestration, and integrated distribution.
Vela Access - Access Control for the AI Era
Founder
2023-05-01 - Present
Projects
Dead Simple Chart - An online server-side chart rendering service that can be embedded anywhere. It supports natural language input and offers a dead simple way to provide chart data.
Elegant Chat - Chat like a language expert on the communication platform of your choice.
Franky - Anonymous messaging for Slack.
My Quizzes - Comprehensive Slack-native quiz for trivia, tests, and games.
My Polls - Create flexible polls in Slack with data encryption designed for enterprise use.
My Intros - Automated self-introductions for new hires, icebreakers, on-call channels.
My Standups - Simple standups bot: prompt your team for updates and deliver AI summaries.
Bubble Tea - A software suite designed to enhance team communication and productivity.
Principal Software Development Engineer
2020-05-01 - 2023-04-30
Sr. Software Development Engineer
2018-05-01 - 2020-04-30
Software Development Engineer III
2016-05-31 - 2018-04-30
Application Software Engineer
2015-03-26 - 2016-05-27
Software Engineer
2014-10-01 - 2015-03-25
M.S. Computer Science
Oklahoma State University
Received the Fisher Scholarship in recognition of academic excellence.
B.Eng. Information Engineering
King Mongkut's Institute of Technology Ladkrabang
Awarded the best final project.
M.S. Business Software Development
Chulalongkorn University
Reached the final semester before transitioning to other opportunities.
Business Administration
Ramkhamhaeng University
Pursued studies through the final semester but did not complete the program.
1st Place Workday Hackathon HQ
Workday, Inc.
2022
1st Place Workday Hackathon Las Vegas
Workday, Inc.
2015
Fisher Scholarships
Oklahoma State University
2015-04-01
The Best Presentation Award in the Project Examination
Information Engineering KMITL
2006-03-20
The Best Project Award in the Project Examination
Information Engineering KMITL
2006-03-20
25th International Conference on Systems Engineering (ICSEng 2017)
Las Vegas, NV, USA
Push technology has become an essential part of many web applications that require near real-time notification. The Hypertext Transfer Protocol (HTTP) is widely used for exchanging information between clients and servers. The growth of the Internet of Things (IoT) and the expansion/penetration of Internet access to new areas have resulted in the ever-rapidly increasing number of Internet users. Consequently, scalability has become one of the key requirements of modern web applications. One of the challenging problems of scalability is scaling out web-push applications since they are constrained by unshareable resources and their stateful nature. Amazon Web Services (AWS) is the leading cloud service provider that offers a variety of services. Web-push applications can leverage the services that AWS provides. Developers can build their entire service stack on Amazon Elastic Compute Cloud (EC2) if other services cannot fulfill their business requirements. To enable the scalability feature, a centralized message mediator is needed to orchestrate and coordinate messages across the web-push nodes. The publish-subscribe pattern should be implemented from upstream to downstream in order to optimize the flow of data...
IEEE INFOCOM'17 (DCPerf)
Atlanta, GA, USA
AWS Lambda (Amazon Web Services) is the most popular serverless architecture provided by Amazon. It currently supports three platforms: JavaScript, Python, and Java Virtual Machine (JVM). The JVM could be the most complicate platform among the three as there are many languages that target the JVM platform besides Java. In addition, the complex hierarchy of dependencies, versioning, and the class loader are major issues that could cause conflict in a project. Deployment in the context of a serverless architecture means deployment as a function that represents a single service rather than as an application that is comprised of many services. AWS Lambda requires a deployment artifact to be self-contained which means all resources and dependencies must be packaged into a single jar file, and this file could be larger than AWS Lambda's allowable limit. Developers usually use build tool plugins to make self-contained artifacts, and those tools are generally unaware of what class and resource files a function needs. As a result, the artifact is not optimized. This paper demonstrates that optimization of an artifact can in general improve its resource usage and runtime performance. This paper also reports the result of an anecdotal experiment regarding the overhead of calling functions remotely in order to support design decisions in the development of AWS Lambda.
IEEE SIEDS'17
Charlottesville, VA, USA
One of the common errors in software development is a configuration mistake. This type of error can have a wide range of severity levels. Consequences of a wrong configuration can be small and insignificant such as a website showing an incorrect font type, or large and consequential such as deleting customer data, incorrect price calculation, or charging a fee twice. In addition, an incorrect configuration may introduce subtle and lurking vulnerabilities into a system. Statically typed programming languages generally can mitigate these kinds of problems to some extent. At compile time, a compiler can detect incorrect types as well as other common mistakes such as some typographical errors, invalid type coercions, and invalid object references. It goes without saying that developers need to correct all compile-time errors before a project can be built. However, hardcoded configurations are not desirable since the input data cannot be changed without rebuilding a project. Due to this inflexibility, external configuration files are needed, but they bring back some thorny issues since the compiler cannot validate the types in those files. Adding validation logic does not substantially mitigate this problem because it is activated at runtime, and errors may not be discovered until a project is deployed to production servers. An external configuration file somewhat lessens the benefit of static type-checking that a compiler provides. Furthermore, string keys are needed for linking the variables in the source code to the values in configuration files. If a key is required to be renamed, it should be renamed in both configuration file and source code. Otherwise, the link will be broken. We propose a new framework that can generate source code from configuration files during development....
Functional Program Design in Scala
École Polytechnique Fédérale de Lausanne
2016-12-05
Functional Programming Principles in Scala
École Polytechnique Fédérale de Lausanne
2016-08-14
Origins - Formation of the Universe, Solar System, Earth and Life
University of Copenhagen
2015-02-06
Creative, Serious and Playful Science of Android Apps
University of Illinois at Urbana-Champaign
2014-12-15
M101J: MongoDB for Java Developers
10Gen, Inc.
2013-07-08
M102: MongoDB for DBAs
10Gen, Inc.
2013-06-20
Sun Certified Web Component Developer 1.4
Sun Microsystems
2007-01-29
Microsoft Certified Application Developer
Microsoft
2006-02-12
Microsoft Certified Professional
Microsoft
2006-11-18
Sun Certified Programmer
Sun Microsystems
2005-09-17
I have limited open-source contributions due to time constraints and potential legal considerations with my employers. However, I do contribute occasionally when minor changes or additions are needed. Here are some of my past contributions.
2018-08-13
2015-12-20
Scan to connect
© 2025 Hussachai Puripunpinyo. All rights reserved.