My name is Adam Carpenter and I am a freelance, general-purpose computer programmer.
- Does your business day consist of tedious, repetitive manual tasks? How do you go about streamlining the process and writing software to automate those tasks?
- Maybe you've outgrown the limitations of DIY site designers such as Google Sites or Wix. How do you approach from-scratch web design and rich web applications?
- Are you or your small business looking to take control of your IT by self-hosting? Wondering how to go about efficiently and securely serving your clients?
I run a business called Carpenter Tech that aims to help you answer these questions by offering the following services.
- Software engineering, custom software design, development, and deployment
- From-scratch web site construction, hosting, and maintenance
- Programming, self-hosting, and IT consulting for small busineses
I am down to earth and enjoy solving problems. If you think I may be able to help solve yours, the best way to get in touch with me is writing to firstname.lastname@example.org.
Below is my CV and other related professional history.
Adam T. Carpenteratc@53hor.net www.53hor.net git.53hor.net
I am a computer programmer who has been developing and maintaining native and web applications since 2018. I have also been providing systems administration services and technical mentoring since 2016. I aim to create simple, performant, and well-documented software that solves real problems with no surprises.
- Build performant, correct applications and services with a focus on automating manual labor and making architects' and operators' lives easier.
- Contribute to internal and client-facing front-end software that is simple and easy to use.
- Integrating with organizational build chains and DevOps pipelines for deployments with zero surprises.
- Architect and arrange physical machines and the servers that run on them for minimal downtime and secure, speedy operation.
- Administer container orchestration clusters with dozens of "micro-services" that need to communicate together to achieve a common goal. Apply zero-downtime upgrade practices as well as high-availability horizontal replica scaling for high-use applications.
- Self-host a variety of tools, applications, and web servers for the purpose of learning and ownership of digital property.
Technical Mentoring, Leadership
- Transfer knowledge and skills in a practical, enjoyable fashion in language that is [hopefully] easy to comprehend.
- Take a senior role in directing a flourishing new team of developers to get started quickly and achieve a state of production in little time.
- Co-host informal lectures and "lunch and learns" on a variety of topics, especially but not limited to computing.
Software EngineerAutomatic Data Processing (August 2021-Present)
- Promoted after three years of hard work as a junior application developer
Application DeveloperAutomatic Data Processing (June 2018-August 2021)
- Authored Altruistic Angelshark, an Avaya Communication Manager automation daemon, to ease friction caused by existing, interactive, and fragile tools and processes. This tool was used to save the company rougly half a million dollars per year by enabling unused license cleanup with little operator input. It was deemed appropriately useful to release as free and open source software. It was written in Rust and operates over the SSH2 library using an undocumented Avaya protocol.
- Co-authored an authentication/authorization API to specifically serve the needs of our team. This software interacted with Active Directory over LDAP, presented users with JSON Web Tokens, and was reworked be used as a reverse proxy in front of our container services.
- On-boarded and mentored team of six developers on organization DevOps technology and practices. This included configuring and knowledge-sharing a Jenkins CICD pipeline, local Docker Trusted Registry, and IBM Cloud Private flavor of Kubernetes. This also consisted of informal lectures on concepts such as continuous deployment and delivery, the "12-factor" methodology, and containerization.
- For multiple years in a row I offered my services for on-site training of new college hires. My responsibilities included mentoring and knowledge sharing for typical industry tools, languages, and frameworks, as well as the inner workings of the company. Classes typically consisted of 20-30 new employees.
Web Application Designer & DeveloperFreelance (July 2019-Present)
- Built a from-scratch art studio storefront to exactly fit the customer's specifications. Site is a mobile-friendly art gallery with a cart and checkout system. I used Rust and Vue JS for the majority of this project. Functionality was delivered ahead of schedule and I was able to quickly compensate for shifting requirements.
- Built and maintained a variety of static sites.
Technology Support Specialist, Repair TechnicianThe College of William & Mary (February 2015-May 2018)
- Worked directly with customers to diagnose issues and install and configure software. Interactions were in-person and over the phone. Responsibilities also included performing basic repairs to enterprise laptops.
- Maintained three to four public access labs at a time during the Summer months, each with 20-30 machines.
I have a Bachelor of Science in Computer Science and graduated from the College of William and Mary in May of 2018. While there, I participated in several group software development projects such as hybrid Android application testing and presided over the campus Game Design Club.
I wrote my first program on a TI-84 in BASIC to help finish my high school math homework faster. I quickly transitioned to building more complicated programs but have continued to enjoy finding the smallest amount of code to solve a problem quickly, correctly, and securely.
I grew up in and still call Hampton Roads, Virginia my home. In my spare time I drive and maintain a classic car, a 1953 Hudson Hornet. I enjoy travelling and being at home with my wife and cocker spaniel. I also self-host a web server in a closet in my home.
I keep a public journal on my web site.