In six weeks, barring any fatal missteps, I will have graduated from the coding bootcamp I am attending and be able to call myself a Full Stack Developer. We just wrapped up our third project, this one finally utilizing both frontend and backend development. Up to this point in our projects, I have only been focusing on functionality, making the code work. A few weeks ago though, I had the opportunity to learn some CSS as we worked on our second project, but decided against it, and just threw some basic Bootstrap on the project and called it good. I reasoned that I would learn CSS later when I really needed it, but wanted to focus on other things now.
As I researched this topic, I found a common thread among software designers. Design teams design the UX/UI first, then give it to the software engineer to make it functional. Looking at it now, it seems logical that you want your product to have a great look and ease of use for your end user in order to make it stand out, and not starting with the experience first, you risk building the functionality in ways that aren’t as user friendly. But it’s been something of a revelation to me. In the 8 weeks I’ve been in this bootcamp, we’ve been building up from the backend to the front, functionality first. CSS isn’t taught, it’s more an add on suggestion to learn on the side. Don’t get me wrong, I’m enrolled to be a software engineer, not a UX/UI designer, functionality should be my priority. And in a 15 week bootcamp I can’t expect to learn all of the basics of design along with full working knowledge of backend to frontend development. But I also know that as I get out into the world of software engineering, I won’t be working in a bubble. The apps I build need to look and feel great for users in order for them to attract users.
What this means for me is I need to be intentional on how I want my apps to look and respond before I build the functionality behind them. It doesn’t need to be pretty, function should still be the most important thing I learn and develop, but being able to think through a design and implement the functionality behind it will help me build those habits now to working with design teams who will be giving me the design and the vision and asking me to make it functional in the future.