Fulfillment

devpersonal
9 min. read

What is fulfilling as a software engineer?

Well, what is fulfillment? Are jobs supposed to be fulfilling? I believe so. Whether you're just trying to pay rent or get your family toward a vacation you can enjoy, jobs always serve a purpose. In a society like the United States, jobs can be seen as one of those super important things that are integral in every sort of way in your life. Is contributing to a random project fulfilling? Also yes. Seeing your name pop up in a contributor list with 4,000+ people can be a surreal experience.

The purpose of this blog post is to triangulate the different thoughts I've had throughout my software engineering life up until this point, and what fulfillment means as a programmer.

The Open Source Hobbyist

I like to think that I am an open source dev. Most of, if not all of what I write is open source. This blog software is open source and written by me. I have a habit of trying to engineer things myself instead of using existing software. I plan on doing the same thing as I continue to grow The Earth App: custom customer service software ✈ and social media generation 📱.

Doing too much can cause you stress. The Earth App is an open source experiment in a way, and I'm on the fence on how to generate revenue, or at least, make it self-sufficient. I mean, all of the AI credits I use from Cloudflare are way below the threshold, but I had a short incident last night where I needed to add more RAM to my Drupal instance for handling all of the data. The problem with the original @earth-app/mantle implementation was that it was incredibly slow. CollegeDB, the sharding router that I designed, was pretty much vibe-coded from the start. And while it worked after a few tweaks, the time between reads from KV and reads from SQL was too slow for it to be performant, even if it was cost-effective. I don't give enough credit to Cloudflare; I really like their serverless business model, especially over Vercel (which even charges you for trying to sync a non-personal account from GitHub).

What does this have to do with fulfillment? I damn near finished mantle before I switched to mantle2. That was exhausting and took up valuable time toward the submission deadline for The Earth App. I get emotionally drained easily, especially with all of the other stuff going on in my personal life. Finding fulfillment as an open source hobbyist can be seen as both something that gives you joy and de-stresses you, or as a source of it. I think from my time in the pandemic as a kid up until my soon-to-be shipment to college, that you need to have a balance, especially if coding can be either therapeutic or harmful for you.

I describe this in immense technical detail because this is how I believe most open source developers think. We tend to overemphasize the small, intricate details of what we are writing, which has some positives and drawbacks. In addition, this is something that I want to explore more. Dual-beneficial hobbies. Sports are kind of the same way: running can be relaxing, but pressure to compete can be overwhelming. Runners also overcalculate their splits to try to do the best they can. Coding can be therapeutic, but trying to fix something in time can cause a breakdown. We keep going step by step, analyzing every intricate detail until we find a couple of letters that make the magic box go haywire. What does this mean for you? Do you stop? Keep going? Do more or less? That, my friend, is the ultimate question for an open source hobbyist. Open source developers do this for the love of the game. But sometimes, we love the game too much. Doing too much is not mentally healthy, and it is important to take a break. That's why the open source community is also so vast: we have the manpower and resources to manage things pretty well. Collaboration will always be important 🎉

As a side note, writing on here has always been helpful to me. Whether it is about ranting about a programming language, detailing a tutorial, or providing my general thoughts about how the world does or does not work, it is comforting. I think that's one of the beauties of writing about being a software engineer, because you can basically do anything you want to on this magical piece of metal.

The Nine to Five

I've had maybe two or three actual coding jobs. The one that I remember the most was when I taught 7th-9th-grade kids about Java over this past summer in 2025. Yes, I was 16, about to be 17 during that time, so I was only about two to four years older than them. While surreal, it was pretty interesting.

Teaching, especially, is exhausting. The job was in more of a downtown city area, about an hour away from where I am. I remember when my dad would pick me up, and I would pass out within five minutes. Creating curriculum, delivering speeches, managing kids, and keeping updates with the manager were all really important. He was there for a couple of sessions just for optics, but I still did the majority, if not, all of the teaching.

The other jobs were kind of just commissions. I do list them as open on my website, but they've been through a couple of revisions, given my mixed experiences. Either from being underpaid, doing random things on Reddit for free, or miscommunication on budgets, and ending up with PayPal drama. It's been an interesting navigation trying to figure out how this evolves. I'm glad I quickly stopped finding interest in the traditional job route, given the rise (and maybe eventually fall) of LLMs and GPTs. If you aren't aware, I plan on studying Psychology alongside Computer Science to look toward the mental health and loneliness epidemic. Heavy stuff.

That last part is what starts to fulfills me when it comes to coding. It also goes back into the whole message with The Earth App: coding for a purpose. I think that the other part is really important as a software engineer. What are you coding for? Why is it important? Are you actually doing anything with the letters, words, syntax, or jibberish on your screen? I like to think that people who stick around in this industry for at least a decade or two may be somewhat like coders. But what is it you're actually doing?

The Project Demon

This is something that I kind of have experience in, but it kind of ties into the first section because they're almost all public or archived. My premium-ish Minecraft plugins, BattleCards and PlasmaEnchants, were never supposed to be open source. But, due to reasons I mentioned in the last post, they kind of ended up being open source, and eventually no longer premium.

A lot of developers like to compare themselves to the problem-solving "LeetCode" stereotypes by just building random stuff. What are you building? Are you just building just to learn? To learn what? What are you eventually going to finish with?

I am a very detail-oriented and goal-focused person. You can kind of get that vibe by paying attention to my GitHub profile: most of my finished or complete projects eventually served a purpose. A lot of my Minecraft plugins or plugin ideas were things I wanted to implement in my own self-hosted server. When that fizzled out, my plugins eventually fizzled out. I wanted to make cmdfx so I could get experience designing my own game engine under Calculus Games, where I want to churn out games that I think younger people like me would've appreciated or enjoyed. I wrote NuxtPress because I didn't feel like making a git commit for every blog post with Jekyll. Not only is The Earth App about the original goal of mental health/loneliness epidemic + intellectual curiosity as an experiment, but to familiarize myself with the limits of the serverless Cloudflare architecture for future experiments.

Projects should serve a purpose, in my opinion. Building just to build is like working for free. It can be a good experience for a bit, but you lose interest quickly. You may get something you want, but it's not something you usually stick around with for a while. By not being motivated by money anymore, you're just kind of doing work to get "experience." But there's no timeframe, no deadlines, no commitment of any sort. Part of why having a job where you receive monetary or status benefits is that it fulfills a purpose in your life, whether it is rent, food, water, or a BMW S1000RR. Building to move toward a purpose motivates you to achieve a goal, learn a skill, moving you more along in your life. If you don't have one, it ends up dying, which for me isn't fulfilling. There are a lot of archived projects on my GitHub that I sometimes think about finishing or improving.

Yourself and You

The post so far has really only hinted at what I don't find fulfilling. Economics, traditional jobs, and building without purpose. These are more existential questions, not software engineering questions. Right?

Technology is a reflection of human nature. It takes place in the social media apps we use, the programs we make, and the games we play. Numerous scientific studies have been trying to identify how different kinds of software change our psychological behavior. Yet, in my own opinion, it just exaggerates what was already there. I believe software engineers are people who would be great political leaders because of their ability to identify patterns, rules, and work with limited resources. You could say this about any kind of engineer, but the tools we use are perfect examples of this. Imagine every little memory byte is a citizen, with its own pointer, direction, uses, and lifecycle. It's kind of a weird detour, but it goes to show how we could be fulfilled doing the same things in different mediums.

How does this tie into fulfillment? It's a weird analogy, but something that I think explains the whole reflection piece. If technology is really a reflection of human nature, then we can easily translate our skills to other places. Politicians (should) feel fulfilled when their citizens are happy. We feel fulfilled when our computer is happy. But trying to satisfy every little bug, piece, issue, pull request, problem, and project can become tiring. All we can do is try to move in a direction that works best for us. Fulfillment in both comes from an impact that works for everyone in the system. It could be an order for decreased costs, monetary or memory-wise.

Fulfillment comes after, not before. It may be from purpose, direction, aligning with your values, or some kind of satisfactory feeling you get from making a game someone enjoys. It may also never come in any form. My trouble has been figuring out which ones are the most important for me. Open source goes with my values, and I find purpose from building projects that I enjoy, but working at a job gives me a sense of direction. I may never figure out what kind of fulfillment works best for me. All I can do is do the best I can to work toward what I need.

Conclusion

I kind of wrote this in response to my disappointment with one of my extracurriculars not being fulfilling, and contrasting it with the rest of the things I do in my life. Yet, comparison is the thief of joy. It's important to take the positive in everything that you do, even if a random teenager on the internet thinks it isn't worth it. You may not control whether fulfillment arrives. But you can control the direction you move in. And over time, that direction shapes everything.

 

Copyright © 2025 NuxtPress. All Rights Reserved.