Hello 👋,
Let’s start off by discussing how my capstone project is going so far. Fortunately, my proposed project, Foodable, got approved, and I was assigned to it with two great teammates. In short, I’ve learned a lot. One of the more challenging aspects has been figuring out how to implement an efficient and highly scalable Retrieval Augmented Generation (RAG) method. Since this is cutting-edge in today’s tech stacks, there are so many ways to implement it, each with its own pros and cons. For our needs, we decided on MongoDB Atlas along with Atlas Vector Search, paired with AWS Bedrock for embeddings and language models. This setup promises high customizability and scalability. It will certainly come with its challenges, but based on research, it should pay off in the end.
As for the capstone course itself, it’s been pretty good. The course is structured in a way that assignments build on each other, which I find very effective. For example, the smaller Preliminary Design Documents, which we did individually, helped my teammates and me brainstorm and figure out the design for our application in the larger, more technical Design Document. However, a recurring issue has been due date extensions. These assignments aren’t small, even the shorter ones, and they’re usually due on Thursdays. But every project so far has had its deadline extended to Sunday. I think setting the due dates for Sundays from the start would align better with development sprint timelines and reduce requests for extensions.
Another exciting development in my life has been the job opportunities that have come my way since attending the OSU STEM Fair. If you haven’t attended that event before, it’s fantastic and packed with opportunities. Thanks to the fair, I’ve had interviews with multiple companies, many of which have progressed to second-round interviews, and I’m preparing for those now. Overall, my career prospects look promising, and I’m excited to see what happens next.
While researching RAG methods, I encountered the term “vector embeddings” frequently. They’re essentially the foundation of how RAG methods function. Creating embeddings relies on linear algebra, and although I like math, I haven’t studied beyond integral calculus since I’ve been focusing on CS classes to graduate. However, I’m genuinely interested in learning more about vector embeddings, semantic similarity, scalars, and related topics. Over winter break, I plan to take a freeCodeCamp course in linear algebra to broaden my understanding of large language models and machine learning. I believe anyone interested in these technologies should have a solid grasp of linear algebra.
Something else I’ve noticed is the use of generative AI for coding. I could talk about this all day, but if you’re interested in learning why it might make you a worse programmer, check out this article.
Lastly, I’d like to share a tip that has significantly improved my collaboration and teamwork. I’ve been part of both good and bad groups, and one area I’m working on is team communication. Sometimes, it can feel like everything rests on your shoulders—let go of that idea. You’d be surprised how much just being honest with your teammates (respectfully) and asking for help can lighten the load.
If you have any questions, please feel free to comment below