For the 5th portfolio project, I decided to make a fitness tracker style application. At the time of submission my fitness tracking is limited to just basic biological metrics (age, height, and gender) and basic daily data points (calories consumed, calories expended, and weight). Some more advanced daily metrics (Basal Metabolic Rate, Thermic Effect of Food, and Total Daily Energy Expenditure) are calculated on the backend. I would like to implement down the road more detailed tracking for both nutritional data, as well as exercise data.
I enjoyed how this project really was a culmination of everything that has been learned in the Flatiron Software Engineering program so far. It tested my skills on both backend and frontend concepts, as well as spanned multiple languages, and presented challenges at every turn. I feel like this project gave a real taste of what fullstack development is truly like. I look forward to making this my career, and the challenges that will be present in a full scale project and how they will be approached when part of a full engineering team. One aspect that I look forward to is working with a UI/UX team, as I do not feel that design is one of my strong suits.
A very interesting issue I encountered during the development of this project was actually not a technical issue at all, but rather a social issue. As I mentioned, one of the biological metrics the application tracks is gender. This is used because the calculation for Basal Metabolic Rate (the amount of energy an individual expends by merely existing) is different for men and women. This made me stop and think how a feature like this in a piece of software interacts with the concept of gender identity/expression. While I believe the formula is driven by birth gender, I do not know if something such as hormone treatment would impact how the calculations are done and I would need to do additional research so as to have a better understanding of the issue. Additionally, it made me stop and think about what the best way to present an issue such as this to a user would be so as to be as inclusive as possible. Ultimately I did not wind up implementing anything beyond a simple dropbox with “M” and “F” options as I didn’t feel it was necessary for the purposes of the project, but it was certainly a revelation regarding the social impact that engineering decisions can have when working on a product for production.
I feel that with the completion of this project, and the (hopeful) passing of the project assessment, that I am truly prepared to begin my professional journey in software development. As my previous blog posts have mentioned, this is a dream I have had since I was a kid, and it’s also something that I felt at points in my life would not be obtainable. However, I confidently say that while the professional part may still be yet to come, as of today I am a software engineer.