Current Status: Available for Work
This site is an experiment in offering my services directly to the public.
I'm your resident computer programmer, based somewhere in California. I can help you with various computer-related tasks.
You might hire me when:
- You want new graphical or networked software for your niche interest.
- You're a business looking to tweak the application logic of your existing system or to create a new system.
- You're a business looking to automate certain computer tasks.
- You want help hosting, configuring, or making your website.
- You want a private email server (mailing lists, custom behavior, privacy).
- You want to set up user accounts for your website / system, with databases and permissions and APIs.
- You want to migrate your computers to Linux.
Frontend & backend web development Changing how a website looks & how it works Desktop applications development Making programs for devices that aren't phones or embedded Network programming Making devices communicate over the Internet Database administration Handling large amounts of data System administration Hosting services over the Internet
In addition, I have accrued some skill with the following:
- basic graphic design
- basic image editing
- basic audio editing
- writing
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.
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.
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.
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.
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.
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.
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.
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.
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.
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?
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.
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.