Software Engineering For Beginners: 5 Most Burning Questions, Answered

Software Engineering For Beginners: 5 Most Burning Questions, Answered was originally published on Springboard.

Choosing a new career path is intimidating. Unless you’ve worked in the industry, you don’t have a real sense of the day-to-day and whether or not you’ll enjoy it long-term.  

We decided to create a “sandbox” of sorts where you can explore what it’s like to be a software engineer by watching videos and trying out free games, applications and introductory courses. These resources shed light on how to think like a coder, understand basic programming languages, solve problems and master the basics of JavaScript. 

If you’re interested in software engineering but it still seems like a big mystery to you, here are five questions a complete beginner would ask, followed by a recommended resource for you to discover the answers for yourself. 

1. What do software engineers do? 

Everyone has a different learning style, but the fact remains that most people learn best through storytelling and visuals. ‘Think Like a Coder’ is a 10-episode narrative series by TEDEd, TED’s youth and education initiative.

The series follows a girl, Ethic, and her friendly robot companion, Hedge, as they attempt to save a post-apocalyptic world taken over by robot overlords. After awakening in a prison cell with her memory erased, Ethic must give Hedge a series of commands to help her break out of the cell and avoid being seen by her robot captors. 

Each step of the way, there’s a challenge with conditions attached to it. You, the audience, have to determine the best way to express the solution as if you were writing lines of code. The catch is you don’t need to understand programming languages, but you learn important concepts like loops (repeating behaviors until certain conditions are satisfied, conditionals (if A then B), and variables (containers that hold onto numbers, worlds or values for indexing). 

Before you delve into any programming language, it’s important to understand these concepts first. This entertaining animated video series gives you a great surface-level foundation for understanding the types of problems software engineers face every day. 

2. How do programming languages work? 

You’ve likely heard about the three main programming languages: HTLM, CSS and Javascript. But what is the difference between each one? How are they used together to build web pages?

In this 40-minute HTML/CSS/JS Crash Course by acclaimed Udemy instructor Colt Steele, you’ll learn how to make a very basic website containing a button with hover effects and interactive photo gallery. 

As you follow the video tutorial, you’ll be prompted to write simple lines of code using Sublime Text (compatible with all operating systems) and CodePen, which requires no software download. Steele is also the brains behind Springboard’s very own Software Engineering Career Track, for which he developed 800 hours of expert-curated curriculum. 

3. How do I use code to tell a computer what I want it to do?

Code.org is chock-full of interactive games designed to teach beginners how to code in hour-long bursts. You won’t be writing code yet at this stage; rather, you’ll use drag-and-drop commands on animated characters to understand how a computer responds to specific commands, how to logically sequence commands to achieve a desired outcome, and how to program objects to interact with each other. 

The games are designed for all age groups, including children grades two and up, so if you’re looking for more of a challenge, note that games are available in ‘Beginner’ and ‘Comfortable’ levels, where you’ll be introduced to more complicated programming languages like Python and Ruby. 

Software engineers

Image credit: Code.org

In the Dance Party game, for instance, you’ll program animated characters to boogie with each other by stipulating what happens when you press different buttons on your keyboard (this is essentially how a software application is built), and you can add your favorite music and various effects. 

software engineers

In ‘Write Your First Computer Program,’ featuring the Angry Birds from the wildly popular mobile game by Rovio, you’re task is to program the bird to capture the pig. You’ll come away with a basic knowledge of repeat-loops, conditionals and algorithms. If you find coding intimidating, games are the ideal place to start.

4. What coding languages should I learn to get a job? 

Once you have a basic understanding of HTML, CSS and Javascript, and you’re ready to build upon what you already know, CodePen is a great place to experiment with code, where you can see a web design come to life line by line as you type code in real-time. 

CodePen.io

Image credit: CodePen.io

You can also view open-source projects others have created, view the code, and modify it yourself. Learning any language is a process of trial-and-error, and CodePen is a place where you needn’t worry about making mistakes. Used by software engineering instructors all over the world, the application separates HTML, CSS and Javascript code so you can learn to distinguish them, understand how each one contributes to the website you’re building, as well as work on each one separately. 

5. How do I get started in software engineering? 

To qualify for our Software Engineering Career Track, you’ll need a basic understanding of JavaScript. Massive Open Online Courses (MOOCs) are a great way of learning new subjects through free courses offered by accredited universities. 

The ‘Java Programming and Software Engineering Fundamentals’ course offered by Duke University gives you an introduction to Java — one of the most in-demand programming languages and the foundation of the Android operating system. You can also opt for Springboard’s JavaScript prep course once you’ve applied for our Software Engineering Career Track and interviewed with an admissions counselor. 

 

The post Software Engineering For Beginners: 5 Most Burning Questions, Answered appeared first on Springboard Blog.

By Springboard
Bridging the world's skills gap through affordable, high-quality, online education.