mikhmha
I also didn't see the notice it was a short story. So I was a bit puzzled when reading how Aaron built his own exchange as a novice programmer. To me building an exchange is high up on the scale of programming difficulty. Its one of those things you have to do extremely well or else no one will trust your platform.
It's frustrating dealing with them since they all use AI in communications. Everything is written so flowery and with so much extra words. Any feedback I give is met with overwhelming praise about "how right I am". Its exhausting.
I understand many of them are in developing countries and aren't confident in their English skills. But I always tell them I'd rather they write in broken English to communicate their own ideas. I want to hear what they have to say, directly from their brain. I don't have issues with parsing bad english. Usually its straight and to the point.
They always end up defaulting back to AI messaging. Even when I tell them to be genuine. I'd love to give one of these firms a chance, but they fail this basic step. I think they think everyone in the developed world likes AI or something.
Bots are also an issue on twitter. But I get way more actual engagement there than I ever got on BlueSky. What gives? The most insidious bots are those that leave replies based on keywords in your post. It looks legitimate until you go to their profile and see they are cranking out replies every second to posts in a topic.
But I figure now is the time to update the site. I don't know enough about Vue.js and I'm more of a backend programmer anyways. I've been putting it off for so long. I always figured the site would be temporary until I put in the time to learn some Pheonix. Its a bit strange being in the Elixir world working on a project that doesn't touch Phoenix in any way. To me its like an entirely new domain for a language that I consider myself "skilled" in. Whereas for others Elixir = Pheonix. So this write-up really helps remove the overwhelming feeling I've had about starting, because I don't need liveview or ecto or all the other stuff but most of the learning resources focus on that.
I'm kind of excited to start now. Eventually it will be a not-so static website that will maybe interface with some exposed endpoints running on the main game server so I can show stats like "live players" or a "live map" of the game on the main site. But for now it will remain completely isolated from the game server.
I think OpenAI had a brief delusion that it could become some huge social networking app. The App was heavily modeled after TikTok..
Remote: Yes. Also open to hybrid and in-person
Willing to relocate: Yes.
Technologies: Elixir, C++, C, Node.js, Godot Game Engine, AWS
Résumé/CV: (resume): https://drive.google.com/file/d/1Zaa-fiZmRCSxHq30d-6mzguWUXj... (linkedin): https://www.linkedin.com/in/mikhmha/
Email: [email protected]
Hey. I'm a software developer experienced in designing and building distributed systems. I've been working on a MMORPG that uses Elixir for the backend. This project has been done mostly out of self-interest and curiosity. Currently the game has some players and fans, with servers located across multiple regions.
Prior to this I was a backend developer at a financial services start-up that specialized in implementing payment solutions for non-profit companies. In this role I wore many different hats. I did Data Engineering work in the form of designing schemas and building PCI-compliant data pipelines for use in analytics (DynamoDB, AWS Lambda, AWS S3, AWS Athena). I also built out several integrations to different CRM + ERP platforms. Furthermore I was responsible for the company DevOps strategy and architected a multi-AWS account set-up + CI/CD pipeline for all company infrastructure deployments.
I'm open to any intermediate backend or fullstack developer roles. I have some interest in working within the games industry, so if you have any roles there, I would also be interested. Through my work on the MMORPG in elixir, I've gained considerable experience in designing and implementing AI-Actor architecture + Hierarchical Task Networks for autonomous agents. Technical interests include: low latency distributed systems, systems analysis, signal processing, and graphics programming.
I find myself interested in developing multi-player simulations with more flexible deadlines. My MMO runs at 10 ticks. And its not twitch-based. So the main simulation process can have pauses and it wouldn't have a big impact on gameplay. Though this has never occurred.
As long as: (tick process time) + (send update to clients) + (gc pause) < 100ms, everything is fine?. (My assumption).
Btw what does DOD mean? Is it Data on Demand? Since my game is persistent I can't reset arrays at some match end state. So I store things either in maps on the main server process or I store it in the dedicated client process state (can only be updated via server process).
Erlang actually has good enough performance for many types of multiplayer games. Though you are correct that it may not cut it for fast paced twitch shooters. Well...I'm not exactly sure about that. You can offload lots of expensive physics computations to NIF's. In my game the most expensive computation is AI path-finding. Though this never occurs on the main simulation tick. Other processes run this on their own time.
I don't know why its not more popular. Before I started the project, some people said that BeamVM would not cut it for performance. But this was not true. For many types of games, we are not doing expensive computation on each tick. Rather its just checking rules for interactions between clients and some quick AABB + visibility checks.
I can imagine lots of lessons learned from telephone networking helped shape ideas around computer network design.
But it goes both ways? Because AI promoters are also spreading FUD. That's how they make money. Because their livelihoods are tied to this technology and all the valuations. So is spreading FUD for you just a condition on whether or not you agree with the person?
What is a credible indication? Who is credible? Its all subjective. Its possible to fool yourself endlessly when financial incentives are involved. The banks did it with mortgages.
I say this as someone who has been holding NVDA stock since 2016 and can cash out for a large sum of money. To me its all theoretical money until I actually sell. I don't factor it into financial planning.
You don't see me being a cheerleader for NVDA. Even though I stand to gain a lot. I will still tell you that the current price is way too high and Jensen Huang has gotten high off his own supply and "celebrity status".
After all, we all can't buy NVDA stock and get rich off it. Is it truly possible for all 30,000+ NVDA employees to become multi-millionaires overnight? That's not how capitalism works.
But now I'm hitting 2 years and the money is starting to dry up so I need to find work again. I always thought working on this type of project would be a win-win for finding work again, but it hasn't helped much. It may even be a hinderance. Employers/Recruiters don't take it seriously or see it as some exotic work experience. I try to tell them - Distributed Systems...the concepts are the same wherever you go. No dice. I'm on the younger side and have 3 years of professional experience at a payments startup doing backend + devops + AWS. Sometimes I wonder if I screwed myself out of the job market. I'm seen as a Junior Dev with a 2 year work experience gap.
I cope by staying in shape. I have a good routine and I even got into swimming over the past year! I think if it wasn't for these activities I would've fell into despair some time ago.
Yet I feel like I get wrongly misjudged as a delusional person trying to make a full-out MMORPG. No my game doesn't have a focus on questing, professions, or theme-park areas and raids. People in this industry are too quick to Pidgeon-hole you into existing game genres when you may be trying to do something new entirely.
I have a playable demo, some interested players who provide feedback in discord, etc. The game mechanics started simple but have gotten more complex with each update. A lot of work is spent in improving the AI and making them behave "smartly". I pay for server hosting and manage the servers. Its just me. But it feels like I don't even get my resume looked at when I'm applying to jobs in the industry. Because I don't have any prior experience?
Employers also don't seem to take home-grown experience seriously? Even if you know more about the niche side of things like networking, graphics, AI programming. If you don't have exact experience in whatever tools/framework they use (UE blueprints, Unity, etc), they think you won't be a good fit. Even though tools are just tools and concepts are more important.
https://swarmmo.games The game is playable in browser! And theres no sign-up required to try it out.
I figure if the game I'm working on doesn't pan out then I'll go become a sailor or something. I think thats what I'm training for, potential career change.
I never understood whose blame the poor memory falls on? In my opinion it was on him to stay organized - something he never made an effort to do. Others would say it was on me to communicate to him what he told me. I don't get paid enough to be his executive assistant. And I don't see the point in communicating better if he would just forget again.
Other times his memory was bizzare. Like he would remember some off comment I'd made to him in a 1-on-1 and then use it as a way to butter me up or appeal to me. I once mentioned to him I follow news in the "programming space" (aka reading this website). And he seemed to remember this whenever he needed to appeal to me to look into some new platform feature clients were requesting. "You read a lot about this stuff right??? Take a look into PDF generation using this library. You read a lot about this stuff right??" I think he thought he was juicing up my ego with this. So bizzare.
Of course its the same manager who did the fundamental sin of complaining downwards to me, and about my peers whenever one of them messed up. Dude you're the CTO. If you can't maintain face then I will lose all confidence in your ability.
OK I'm going to stop venting about my last boss now. Sorry!
For my self what I found interesting is the depiction of Russia in the 19th century, and the on-going transition from a peasant agrarian society into "modernity" and all the confusion it creates. I am not Russian, yet it all seemed so familiar to me. Why? Because I think this same transition is going on in my ethnic country - though 200 years later. Because the archetypes of people shown, the attitudes among former aristocrats and landowners, inefficient (and unserious) bureaucracy, conflicting ideas about religion vs secularism, inferiority complex towards "modernism", changing views of women's role in society, etc I've seen all the same things.
And of course, the book finally convinced me that I should not give into nihilism and pessimism even when everyone around me does.
I don't know - whenever I think about quitting this "bad" habit, I remember that it would just be replaced by sitting around looking at my phone. Being put into this physical trance by a drug has to be infinitely more healthy than that right? I trade one addiction for another.