So, I’m an Intern at Minilemon: Kicking Things Off
/ 5 min read
Table of Contents
In an unexpected turn of events, I landed an internship as a backend developer at a relatively new tech company, Minilemon Technology, this month. The recruitment process was expedited due to some stories that might be better served for another time. The people in the company seem chill and friendly, considering the small size and startup-like culture. We work remotely with flexible working hours, though I chose a more predictable 9-to-5 time. We have a lot of unpaid1 interns here, who are mostly university students. It’s a six-month gig, so I’m planning to soak up as much as I can. There’s also a chance of going full-time if my performance is satisfactory, so I’m pretty excited.

For the first week, I was assigned an experimental project to ease myself into the company. It will be a simple app that connects photographers and their photo subjects, with a smidge of AI performing some facial recognition and obfuscation. It was inspired by a trend called “pelari kalcer2,” which my out-of-touch self unfortunately wasn’t aware of before. I’ll be working in the open, on their public GitHub org, so it should be fine to write this here. And it will mostly focus on tackling experimental/new tech stacks, with the stated goal of a working prototype/MVP within a few weeks.
The web stack they’re throwing at me includes: TypeScript, React, TanStack Start, Bun, and Drizzle ORM. For the database, we’re looking at PostgreSQL, pgvector, and S3-compatible object storage. To support the “meat” of this project, which consists of finding people’s faces and making an embedding/face descriptor out of it, we’ll also be pulling in AI vision libraries like ML Kit and face-api.js. The stack is negotiable and can be changed as we go—there was a talk of using LiteRT, for example—but this is the starting point.
Now, I’ll be honest: I’m diving into the deep end with most of this stack. I’ve fiddled with TypeScript a bit because it’s so widely used in the web dev ecosystem right now. This very blog uses TypeScript and Astro (cool tech, btw!), so I know a thing or two, but not at a professional level. React is totally new to me, though I’ve used Vue.js in the past because it was the preferred framework to work with on Laravel—a PHP framework that I’m much more knowledgeable of. My web dev background is mostly Java (Spring Boot) and PHP (Laravel), so this is definitely a shift. I’m pretty in touch with PostgreSQL since it is the database of choice in the industry, but I wouldn’t worry too much about it—and the database stack at large—specifically because it should be handled through the ORM. The rest of the stack, though, I have no idea.
So yeah, the tech side is quite ambitious. But the work itself hasn’t fully kicked off yet, since I’m still waiting for the detailed project plan and a few other team members before we start properly. We should later collaborate and divide the frontend and backend work, so hopefully I won’t fret too much about my inexperience. I’m also pretty accustomed to the “meat” of this task, AI, since I spent a considerable amount of time with it—though it was mostly for NLP—during my time in my CS degree. I’m cautiously optimistic I can tackle this project.
For the next few days, I’ll be supercharging my learning on this stack. I might or might not post (or make a note) about something related to them if I stumble upon interesting tidbits along the way. I’d also discussed this list and its learning path with Gemini, but it basically boils down to: RTFM. Their official documentation is often a good enough starting point, especially for someone with my background, just trying to transfer knowledge.
I know, I know. RTFM is the consensus with learning most tech-related stuff. But I just want to be extra sure, y’know. One can’t be too cautious… Oh, have I told you that I’m the type of person who opens hundreds of browser tabs during research of basically anything—even mundane stuff? Anyway, wish me luck. 🙂
Footnotes
-
I know “unpaid” can be loaded terms these days. But the company is explicit about it in their job listings (all caps and everything), so I’m just calling it what it is. ↩
-
Basically, they’re people who frequent running events not because of the sports (e.g., surpassing their PB time, getting the medals) but to take chic photos of themselves wearing their favorite OOTD while posing like a runner. They do this to post themselves on social media—often alongside Strava stats—to achieve social validation. I don’t have anything against this trend as long as everyone stays healthy and doesn’t bother others, but there is a hint of pejorative in this slang phrase. ↩