Current Status: Available for Work

This site is an experiment in offering my services directly to the public.

Salutations

I'm your resident computer programmer, based somewhere in California. I can help you with various computer-related tasks.

You might hire me when:

Services #

In addition, I have accrued some skill with the following:

Specific Technical Skills
  • Languages I Have Used:
    • Recently: C, Python, SQL, Bash, Odin, Lua, Rust
    • Begrudgingly: C#, Javascript
    • At Some Point: Common Lisp, Java, C++, Zig
  • Linux (5 years)
    • Experimented with servers, virtual machines, the networking stack.
    • Familiar with many command-line tools.
  • Git (2 years)
  • Various Web Technologies (2 years)
    • HTML5 and CSS3, including CSS animations and media queries for mobile-friendly sites.
    • WebAssembly.
    • Other: Flask, JQuery, Bootstrap, Axios, ASP.NET
  • Virtual Machines: Qemu
  • System Administration: Nginx
  • Note: I do not have experience with embedded development, but would be happy to learn.

Experience
  • I have created three websites like this one.
  • I have written a number of small networking programs.
  • ...many of which interact over HTTP.
  • I made a number of graphical applications, one of which I use daily.
  • I've worked with Stripe payment systems before.
  • I wrote SQL on a daily basis for a year.
  • I have designed a number of HTTP APIs.
  • I made at least one big networking program with eventual consistency and distributed databases.
  • I've almost had occasion to build a compiler. I'll get there one day.
  • I've used some open source libraries before, such as curl, sqlite, and openssl.
  • I have automated various onerous tasks with scripts and at one time Qemu virtual machines.
Development Process #
Inquiry

You decide whether or not to hire me!

You email any concerns you have, I ask questions about your project; a conversation! If you have a question and it is common enough, the answer might already be on this website. Extended consultations or interviews may be possible to arrange.

Hiring & Payment

You decide to hire! I beckon the spirits of computation to your whim.

For individuals, I ask a small up-front payment that goes towards the first leg of development.

For organizations, I ask you to sign a contract stating that you hired me at a specific rate for the project.

For all, I will ask if I can share source code I create for you with the public under an open-source license, with accompanying paperwork.

Payment is typically every one to two weeks, and delivered by invoice.

Available payment methods: Stripe Invoicing.

Research & Prototyping

A good portion of software development is figuring out what is to be done. It's a process, and it requires a lot of care, patience, and empathy.

I ask questions to decipher what you actually want from your software / system and try to draw up designs. If there is relevant technology or domain knowledge I need to learn, I learn it. I ask more questions to see if I understand, and ask for feedback.

Eventually, with a comfortable working knowledge of the problem, I attempt a solution. This is the prototype. It's meant to look unusably bad, but be quick to develop and, with any luck, do what you want it to do.

Continued Development

Depending on how the prototype goes, I start refining, polishing, and overall making the software / system work well. This can continue for as long as you please, with the software getting more features, better workflows, and generally becoming a more pleasant experience. Cycles of work and feedback.

Communication

Throughout development, I will give you daily to weekly updates on what I am doing, with plenty of opportunity for you to jump in and shape the software / system to what you actually need. Invoices will contain a summary of what I did during each time period, as well as the exact hours I worked.

This keeps you updated, keeps me honest, keeps the work in line with what you want, and reminds you that what I am doing is usually complicated.

End

You are (hopefully) satisfied with the end result, and my work comes to an end. If there are bugs you discover afterwards that I didn't catch during development, I may choose to fix them for free. Otherwise, you may hire me (or another programmer) later for any new features or changes you want made.

Why should I hire you? #

The best software is written by the people that use it. But... not everyone knows the craft. Let it be sufficient that one can ask for outside help.

People tell me they learn new things when they talk to me, and I take it to mean I have some small expertise. I have been studying computers for about 8 years now, and was working professionally - until my former employer stole from me and most of the engineering team.

My colleagues tell me I program well, and I am inclined to believe them. I hold a bachelor's degree in computer science from the University of California, Davis.

Additionally, I am afflicted with a seething hatred of fraudulence and carelessness.

Rates #

Talking about money? How crass!

Type Hourly Rate
Individual / Community $22-$25
Business $25-$30+

Generally speaking, higher rates are expected when projects are:

  • commercial
  • technically demanding
  • have stringent requirements
  • need many phases of feedback

Lower rates are expected when projects are:

  • non-commercial
  • grassroots
  • technically easy
  • have lax requirements

Please note that these are merely guidelines and that rates are subject to change at any time. They are currently at about half the industry average for my first few clients.

FAQ #
If I hire you to build a website, will it look like this one?

Somewhat!

I wanted this site to be quick and easy: one page, mostly text, few colors.

My websites do tend to look different than most major sites. Aside from my unique aesthetic sensibilities, I avoid using Javascript.

How long will my job take?
Source: xkcd 1658

I will give estimates if I am reasonably confident I can fulfill them.

Do you use generative AI in your work?

No. I do not use large language models, diffusion models, or related statistical models when I make anything for you.

Contact #

Email is checked every Monday.

dev@mendidev.com

Note: I cannot work for free. I will answer inquiries if it will help you decide whether or not to hire me.