Full Stack Web Development Explained

In my Tuesday post I wanted to share a clear picture of what Array teaches and what employers can expect from our students. Part of Array’s core mission is to prepare students for the technology industry both here at home in Wyoming and beyond. Our curriculum is a critical element of this extremely important purpose.

To best understand what we do here, it was only appropriate to hear from our professor, Josh Sanderlin. Besides being a rock star in the classroom, Josh has been involved in many aspects of the industry. Today he is going to layout exactly what a full stack developer is and how we prepare our students at Array. If you read Monday’s post, this is the top part of the “T” model described. Here’s Josh with the scoop.

“A Full Stack Web Developer is a programmer who can effectively work on any part of a complex web application. We often use the terms front-end and back-end to describe the two sides of Full Stack Web Development.

Front-end development requires knowledge of 3 core languages: HTML, CSS, and JavaScript. These languages allow you to build beautiful user interfaces and interactive experiences that show up in a user’s web browser. Other front-end frameworks are often stacked on top of these core front-end languages including: ReactJS, AngularJS, VueJS. The most difficult, but also most important, language to learn out of the core front-end tools is JavaScript. That’s why we teach it from very early on at Array.

Back-end development refers to several layers. The lowest layer is the database, where all user and company data is stored. Sitting on top of the database is the server-side code, which pulls data out and pushes data into the database, but is also responsible for handling requests and sending the HTML/CSS/JavaScript out over the internet to be displayed in each user’s browser.

Unlike front-end development which relies on the 3 core web languages, back-end development is a much more opinionated and diverse field. There are many choices for both database technologies, as well as server-side languages and frameworks. When building a database you have to first choose between a SQL or NoSQL database. If you choose SQL then your database choices include: MySQL, PostgreSQL, SQL Server, and Oracle. If you choose NoSQL, your choices would include: MongoDB, DynamoDB, CouchDB, among others.

Choosing a back-end server is just as tricky as choosing a database. At Array we teach back-end code using mainly Ruby on Rails, with some exposure to NodeJS and PHP. Other choices, which we don’t cover, include .NET MVC, Python/Django, Java/Spring, and many more!

In my opinion, mastering one particular full-stack of web technologies is more important than branching out and being only half decent with all of them. It is very easy to switch to a different stack once you’ve gotten good with one of them.”

Whew… you can see why it takes 6 months to get a handle on this! Luckily at Array, you are in great hands. You are part of a family when you are here, and we will work tirelessly to make sure you are ready for the industry. Likewise, Array is part of the global technology family. We also want to work tirelessly with industry leaders and employers to create the best students possible. Employers, we want to hear from you too! Please don’t hesitate to write us at office@arrayschool.com to give us feedback, set-up a guest speaking opportunity, or to let us know how we can help staff your business with the best and brightest.

Next week you are going to hear about our educational model. This may sound boring, but like I said earlier this week, it’s actually quite exciting and full of surprises. You’ll be hearing from our Headmaster Eric Trowbridge and get the low down on Finnish education, beer, and 2-hour lunches. I had you at beer didn’t I? See you next Monday!