For this post I’m going to discuss my experience so far with the capstone project, technologies I’m looking forward to using, and how it applies to my career path.
So far in this course I’ve selected the project I wanted to do and joined with a team and we’ve gotten a couple of the preliminary assignments out of the way. The project that I ended up becoming a part of is the crowd sourced shopping app. The reason that this project interested me is that it requires a decently sized backend involving a database to interact with. I really enjoyed the database class that I took and out of all the projects that I was qualified for this seemed like one that was very straight forward while having a lot of room to expand on given extra time. As an aside, I thought the 3D print farm network project was really interesting because my hobby for the last few months has been 3D printing. However, I don’t really have any experience in firmware development and didn’t think it would be appropriate to select given my limited ability to contribute to what I imagine would be mostly firmware development. Back to the topic I am excited to be working on the crowd sourced shopping project as I think it will be a good project to have in my portfolio and will be a great opportunity to learn new technologies.
On the topic of new technologies the thing that I’m most looking forward to working with are the various project tracking tools that are available. My group and I decided to utilize Github’s project tracking functionality and I’m excited to check it out and get hands on experience with it because I believe project tracking is an important part of development in the industry and I haven’t had the chance to work with any in my course work so far. I’m interested to see how it improves productivity and accountability because I know for myself that I’ve simply forgotten to do something because I never wrote it down or documented it on some sort of task board. One of the other technologies that’ll be using in this project that I don’t have any prior experience with is microservices. I haven’t looked into it so far but the way one of my group member described it made it sound like it is an in between layer that abstracts out the details of certain aspects of a project. For example the database interactions, so that the entire project isn’t tethered to a specific database or API and can be interchanged with only changing the microservice. So I’m curious to see what that looks like and it sounds like a very useful tool.
The final topic of this blog post will be about how the capstone project relates to my career path or at least what I currently envision it being. Currently I’m six months into an eight month internship at Intel working on a team that does performance benchmarking of Intel and market competitors hardware. I’ve really enjoyed doing this work and hope I get the opportunity to stay on at Intel after my internship is over. So on the surface it doesn’t really seem like the project I’m a part of has much to do with the field of software engineering I’m currently in. I think that that mostly has to do with the nature of computer science programs, for the most part there needs to be some tangible project that can be played around with and visualized. The work I do just runs a program and spits out a number and that’s the extent of it. This unfortunately does not make for a very interesting project for outside people to look at on a poster at a career fair for example. This is something that I’ve thought about throughout my time in the program because I’ve never really been interested in web/app development but almost all of the classes main projects are some form of web app or visual console output that can be interacted with. I understand why things are set up this way but it’s what motivated me to select the project that I did so that I can use some of the database skills I already have and get experience in project tracking without having to devote too much time in learning new technologies related to web/app development that I’m not really interested in. With that being said working in different groups and on various projects always presents new opportunities to learn valuable skills and gain relevant experience in technologies no matter what area of software engineering one ends up being in. You also might not always be within the same field so some of the skills you learned but don’t currently use may come in handy one day and I’m looking forward to learning them in this class.