- 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.
-
-
-
- I am fluent in Rust, C#, Python, JavaScript, Bourne Shell, and HTML+CSS. I am
- also familiar with Java, PHP, C, C++, TypeScript, and PowerShell. I have used
- a variety of frameworks and libraries, as well as a myriad of web servers,
- databases, and "DevOps" platforms.
-
-
-
-
Skills
-
-
Software Engineering
-
-
-
- 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.
-
-
-
-
Systems Administration
-
-
-
- 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.
-
-
-
-
-
Work History
-
-
-
Software Engineer
-Automatic Data Processing (August 2021-Present)
-
-
Promoted after three years of hard work as a junior application developer
-
-
-
-
-
Application Developer
-Automatic 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 & Developer
-Freelance (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 Technician
-The 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.
-
-
-
-
-
-
Academic History
-
-
- 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.
-
-
-
-
About Me
-
-
- 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.
-
- 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 businesses
-
-
-
- I am down to earth and enjoy solving problems. If you think I may be able to help solve yours,
-
-