Joseph Daws, Jr.

Table of Contents

About

Hello, my name is Joseph (Joe if you prefer monosyllabic names). I build software to help humans thrive. I believe that software can be used to improve the state of the world despite it’s challenges and potential dangers. One lens through which I view my work is as a string of problem definitions and solving those problems. Iterating on my understanding of the problem domain and the world is key. Projects I have worked on professionally reside in private repositories, but for some of my creative and side projects please see my github page.

"Joseph Daws, Jr."

Figure 1: Taken around Jan. 2024

I believe machine learning (and software in general) can be used to improve the state of the world. However, deploying these technologies requires a nuanced understanding of specific business and problem spaces. My belief in the possibility of positive outcomes guides my approach to building. Good software goes a step beyond solving a problem, it should enable humans to live a better life.

I am currently a Senior Machine Learning Software Engineer at One Medical where I am working on automating laborious and monotonous tasks to give time back to health care providers so that they may better connect with their patients.

Work

Below is a non-exhaustive list of resent work projects I have had the pleasure to work on.

Document Summarization

Technologies Used Python, Anthropic Claude, AWS Lambda, AWS DynamoDB, AWS IAM, AWS SNS/SQS, Terraform

Problem Description To achieve the highest quality in patient care One Medical’s providers need to be able to spend more time connecting and understanding their patients.

Solution One area they might save time is gleaning the most relevant and important information from the documents associated with their patients. I developed a system which generates summaries of all patient’s documents which is consumed by an EHR and displayed along side the rendered document in an EHR UI.

Automated Fax Routing

Technologies Used Python, Tensorflow, FastAPI, AWS Lambda, AWS IAM, AWS SNS/SQS, Terraform

Problem Description A team of Fax routers receives more faxes than they are able to process given their team’s service level agreement.

Solution To lessen the burned of the fax routing teams’ workload, I extended a routing system to automatically processing incoming faxes. The system predicted key identifiers for each document. These predictions were forwarded to an EHR which took an action based on the predicted values.

Tools

For Machine Learning Microservices I’ve used and enjoy working with Python, AWS SageMaker, Docker, AWS Lambda, FastAPI, AWS ECS to build microservices that serve machine learning model predictions. I think this stack offers a path to building maintainable and efficient machine learning microservices in a variety (but not all) contexts.

For Web Applications Some technologies I am excited about are Haskell, IHP Platform, NixOS. I expect to be able to use these build a robust, easily maintainable, and easily modifiable web applications. I am working on a personal blog/second brain using IHP now. Please check back for updates on this project.

I like learning about new tools New problem domains (I mean both the sense that the problem domain is truly novel and the sense that I have no experience in the domain) likely have established or new tech stacks that are better candidates to solving the problem than what I have used previously. It’s a pleasure to have the time to find a good solution and balance the trade-offs when approaching a new problem. I don’t believe in the existence of a perfect tech stack.

Log

I keep some notes and ideas in a log. You might be interested in it if you want to see some ideas for applications or progress on some of my personal projects. Another reason you might be interested in this page is that entries may point to interesting technologies.

Trivia

One can learn about another by contemplating the trivia that they find interesting, or that’s what I believe at least. Here are some trivia flashcards that I think are fascinating tidbits of information: trivia.

Site

Overview The content of this page is from an org file, index.org in the github repo. the other files in the repository contain the rendered content and the style information.

Styling The styling is injected into the project using the #+SETUPFILE option in the org file. The css that defines the style is stated in #+HTML_HEAD: lines in the theme file. All of the styling is contained in the file gray.theme. The element selectors and classes get injected in the style tag in the generated html file by org-publish.

Workflow For immediate feedback on changes we use impatient-mode which in doomemacs can be added with the package below in the packages.el file used by doom.

(package! impatient-mode)

Open the html file associated with the index.org file using M-x impatient-mode of Edit the index.org file with content changes. Then use M-x httpd-start in the index.html buffer to start serving the html at the path localhost:8080/imp/live/index.html

With a few small changes to the configuration of doom-emacs the newly generated html file on disk will also update the html buffer which impatient-model serves. In the configuration that I use for doom-emacs I added the following hooks

(defun auto-revert-html-buffer ()
  (when (and buffer-file-name
             (string-equal (file-name-extension buffer-file-name) "html"))
    (auto-revert-mode 1)))

;; reload html file associated buffers when they change on disk
(add-hook 'find-file-hook #'auto-revert-html-buffer)

(defun org-publish-refresh-html (_plist _project)
  "Refresh the HTML buffer if it is open after publishing."
  (let ((html-file (org-publish-get-target-file (buffer-file-name) 'html)))
    (when (get-file-buffer html-file)
      (with-current-buffer (get-file-buffer html-file)
        (revert-buffer t t t)))))

;; reload html buffer after org-publish
(add-hook 'org-publish-after-publishing-hook #'org-publish-refresh-html)

See the README in the github repo for doomemacs configuration.

Test Driven Development coming soon

Inspiration

[1] Org mode publish tutorial [2] the theme of this page is based on gray from org-html-themes

Expedition

What’s the web without it’s connections?

Online retailers of fascinating objects Proveyors of fine papers an pens Baum-kuchen

Wonderful bicycle parts sim works USA

Bicycle frames made in Knoxville, TN muskrat bikes

Software 100 rabbits

Anton Dereventsov