Design Engineering, Habits App, San Diego
Learning Design as a Software Engineer
The term Design Engineer has been thrown around recently and when I heard it, something about it resonated with me. In my limited experience, there is often a disconnect between designers and engineers.
Engineers tend to think very technically and logically while designers usually have creative privileges that can be a super power and a curse. Many times I found my peers detest developing on the front end because of the requirements set in place by the designer.
This usually led to revisiting of designs to add some flexibility in scope for engineers who have yet to find the solution to implement the design. I have been guilty of it too, where I think something about a design is overly complex and at the same time underestimated on how much work it takes to build.
This is were I think roles like Design Engineer shine. Having somebody that is technical and at the same time design oriented can help tremendously. Even learning a bit about Figma or other design softwares can help you be a better front end developer.
I was often praised and sought after for my opinion due to my ability to implement front end code based on designs quickly. While I was a full stack engineer at my previous company, I found myself dealing with many of the front end problems we were facing. That's what led me to learn a bit more about UI + UX design and now I feel like a much better developer for it.
Habits App
Progress report on the habits app I am building with React + Tailwind/Shadcn and Go. I was able to get a prototype of the contribution chart using this react-activity-calendar
Thanks to this library, I can shave off a lot of time from building the contribution chart with a table or whatever frontend solution I would've came up with. Next feature I would like to add is a log of activity underneath the charts.
From a developer perspective, I need to make my routes more dynamic. Coming from PHP + Laravel and moving to Go as my backend has made it clear how useful a query builder is. For example, I want to use a query parameter ?year=2024
and this should add a where clause to my SQL query for indexing contributions SELECT * FROM contributions WHERE strftime('%Y', created_at) = ?
Because my application is so barebones right now I'm not too concerned with making these optimization right away, as to ship as soon as possible. Were this an application used by thousands of users with many more features, a query builder would be very helpful.
All in all, I've enjoyed the experience so far. I hope to finish this project without adding a shit ton of npm packages. Then again, using a javascript framework will assure my bundle size is quite large. pause.
San Diego
I'm currently in the home of the Padres, San Diego, California. Some fun facts about this city:
- 60% of Cali's avocados come from here
- Home to Legoland
- WD-40 was invented here (check out this guy who won $2750 using JavaScript, AI, and a can of WD-40)
That's all I got for today. See you, space cowboy.