Career Development Category Archives - General Assembly Blog | Page 3

How to Get a Job in Tech

By

Shifting careers to move into a fast-growing field like technology can be a smart investment in your long-term professional success. The hardest question for most career changers is not whether to make a change — it’s where to begin. This is especially true if you are considering entering a field you’re unfamiliar with.

Luckily, the path to getting a job in tech with little to no experience can be a simple and direct one if you follow a few basic steps.

1. Develop a Growth Mindset

First, keep in mind that your perspective can determine how successful your career change process will be. It’s worth taking some time at the start to get into the right frame of mind. If you’re looking to get a tech job, the key is to develop a growth mindset

Having a growth mindset simply means believing that new skills can be learned and mastered. No one was born knowing how to write code or build web applications! Everyone, no matter how naturally talented, was a beginner once. Every app or device you use was created by a team of people who had to learn and practice new skills on their way to creating something awesome.

You’ve been a beginner in the past too, and have learned all kinds of complex things, from typing or riding a bike to playing an instrument or making a work presentation. So give yourself space to learn, regardless of your age or experience.

In tech, progress never stops. There will always be a new tool or programming language to master. Just know that every new program that you get under your belt will make it easier to master the next one, whenever it pops up.

2. Know Why You’re Making a Change

Why do you want to get a job in tech? It could be that you’re curious about how things work and the code that makes it all happen. Maybe you’ve grown up with digital devices and can’t imagine life without them. Or, perhaps you’re looking for a stable career that will allow you to better provide for yourself and your family. You may have wanted to move into a tech career for a while, and the timing finally seems right to make the change.

There are no wrong answers here. The important part is to have a vision you can go back to on rough days to remind yourself why you want to be a tech professional, and give yourself a motivational boost of energy to keep going.

3. Name Your Goal

The key to this part of getting your tech dream job is to be clear about where you want to end up once you learn the ropes. There are all kinds of exciting job opportunities in tech, and one or more are sure to be a great fit for you.

If you’re a creative problem-solver, a web developer or software developer position might spark your interest. If you’re interested in something more concrete, software engineer or data engineer roles could be where you will excel. Do you enjoy finding patterns and connecting dots? You may be exactly the person a tech company needs as their new data scientist. Interested in solving mysteries? Cybersecurity could be the field for you.

As you become more familiar with the responsibilities of these roles, you can also begin to narrow down your preferred type of workplace. A deeply resourced multinational enterprise company can be just as satisfying as a career destination as a scrappy innovative startup in a field you really love. Choose what makes the most sense for you and your reasons for setting the goal identified in step 2.

4. Start Right Where You Are

Now you know where you’re going; the next step is to map the route to get there. The good news is, you don’t need an MBA or any other formal degree to be successful in your new tech career. You don’t even need to have a technology job to start getting tech experience!

In fact, you may be able to start getting tech experience at your current job. Consider volunteering to help update a small business’ website, interview shoppers about your store’s app, or shadow someone in your IT department as they troubleshoot a problem. Information you get from these “practice” opportunities can help you decide what new skills you want or need. Check with your HR team to see if your company offers tuition reimbursement or any upskilling or reskilling programs that you may qualify for.

There is an abundance of virtual training possibilities for those who prefer a self-study program. From free YouTube videos to paid options like Coursera and LinkedIn Learning, there’s no shortage these days of convenient and affordable ways to master new skills at home and at your own pace.

Interested in learning alongside a team? Consider participating in a hackathon as a subject matter expert on an issue close to your heart, and watch up close as tech professionals work together over a fast-paced weekend to build a solution to a pressing problem. Or reach out and pick up some projects through Catchafire or a local site like LendaHand and start building your emerging tech skills while helping make the world a better place.

Learn better in a classroom with live instruction? Reputable companies like General Assembly and CompTIA offer a variety of programs designed specifically for adult learners, and with schedules and topic areas crafted to meet both your needs and the demands of a hot job market. Programs are offered both online and, where permitted, in person on campus. Financial aid and payment plans are often available for students who qualify; there’s no need to take on crushing amounts of debt for a conventional four-year degree when a rigorous 12-week bootcamp can give you the skills, tools, and support you need to be a competitive tech job candidate.

5.  Connect with Community

How are you supposed to find your first tech job when as many as 70% of job openings are not advertised? With a strong network, you can hear about those “hidden” jobs before other candidates do.

Networking doesn’t need to be a negative experience. Consider it a way of learning about your new industry and community by connecting with human beings who were once in your shoes. Most people enjoy helping people the way they were helped on their journey. As long as you treat people with kindness and respect, and not simply as a means to an end, you’ll begin to grow your reputation as a smart and curious person who would be a pleasure to work with.

Online communities can be as powerful for networking as in-person events. With so many networking events happening virtually, you can connect with hiring managers, tech recruiters, and other potential employers from Silicon Valley to New York City and beyond, often for free. Check out sites like Meetup and search for the topics that interest you; from Python to Ruby to HTML, there’s a meetup to meet your needs.

You’re seeking ways to connect with tech industry professionals as someone new to the field and eager to learn. So polish that resume, post it on job boards, read a few articles on how to optimize your LinkedIn profile, and put yourself out there. Once you start writing code, even if it’s for a class project, share it on Github. Leverage social media to connect with future colleagues and maybe even find a mentor.

Volunteering and being of service is both a great way to learn and a great way to meet new colleagues in the tech industry. Consider joining a professional association or two, even if you are just starting out. Get involved in Slack channels, LinkedIn conversations, Twitter feeds, and attend a few conferences, whether they’re virtual or in-person.

Initiative, curiosity, kindness, and hard work will set you apart as a strong interview candidate for your first tech job. The more tech talent you begin to have in your circle, the more likely it is that you’ll begin hearing about relevant job openings — and your new friend may even be able to get your application directly to a hiring manager.

Conclusion

You can land your first tech job with no experience as long as you’ve done the right research and preparation beforehand, and are willing to put in the time and effort to master new skills. A commitment to lifelong learning and a clear idea of what you want to do and where will help ensure your success, no matter how you choose to study. Take the time to consider free and paid training options, in-person and remote programs, and volunteer opportunities as you design your learning plan. And, start connecting with your future employers and colleagues early through networking and social media. A new career is waiting for you — take your first step toward it today.

Explore Our Online Programs

How You Can Afford a GA Course

By

We believe every student should be able to invest in new tech skills — without worrying about obstructive costs and financial challenges. From zero-interest loans to deferred payments and scholarships, you’ve got options to help you afford learning at GA — no matter your financial situation.

Our friends at Climb have created a quiz to help you discover your best solution:

Are Coding Jobs Boring?

By

When you think about a new career in coding, what comes to mind? Do you imagine working behind the scenes at a movie studio or fashion house? The deep satisfaction of improving a life-saving medical device? The systems and engineering mindset needed to build the dashboard controls for a new smart car? 

Maybe you’re thinking of a workplace where projects are different every day, like an ad agency building websites for global brands. You may even have an app idea that could really change the landscape, if only you knew how to make it. Whatever you think a coding career might be, you’re probably right — unless you think it’s boring.

Of course, every job has its boring moments, as well as stressful ones. The good news is, once you become a proficient coder, you can begin to explore and decide on the types of coding projects that will help you thrive for years in your new career. The idea is to choose a career path that’s the right fit for your particular working style.

The variety of industries that hire programmers and developers is endless, from the energy industry to retail operations to manufacturing to social causes. The software your dentist uses to view your x-rays; the app that you use to order takeout; the computer in your car that lets you know your coolant is low; the playlist that syncs your phone to your home audio system — all of these cool innovations were made possible by teams of professional coders.

Remember, writing code is not the only programming skill out there. The individuals who built those solutions to everyday challenges have lots of different titles, from web developer to mobile developer to software engineer, or even data scientist. All of them work with code in their own ways and have their own career paths, with their own obstacles and rewards. With so many career options that stem from a shared set of programming skills, the last thing the coding field could be called is boring. The real question is, is coding the right fit for you?

Do you like learning new things?

Neuroscience reveals that our brains have something in common with technology: neither our brains nor tech are fixed, but are instead constantly changing and evolving.

Experienced senior developers are constantly studying to learn new coding skills, as new programming languages like Python become widely used, and new applications are found for existing fields like machine learning

Fortunately, you don’t need a computer science degree to start a new career programming career. Many coders and developers are self-taught, using free or low-cost resources available at their local libraries or online such as Stack Overflow. Some seek out learning opportunities at their current jobs, like volunteering to help maintain a business website or install a new database. Still others invest in themselves by signing up for a coding bootcamp with live instruction, real-time code critiques, and built-in networking opportunities.

In the end, the programmers who are most successful in this field are the ones who continuously upskill and stay current with new developments in tech. What does this mean for you? It means that a demonstrated commitment to lifelong learning and a growth mindset can be the key characteristic that sets you apart from other candidates for that first junior developer job!

Are you good at solving puzzles?

Can’t get enough of jigsaw puzzles, riddles, and crosswords? Your ability to quickly see patterns and solutions where others do not is a quality that could serve you very well in a software development or computer programming career. Successful engineers and developers have a great eye for detail, an essential skill in a field where a single misplaced bit of punctuation can stop an elite billion-user app dead in its tracks.

Is it stressful? Not for you, because you thrive on pursuing solutions when others have given up, and find it deeply rewarding to help a team resolve wicked issues that no one could fix alone. Every bug is an interesting coding challenge, and every update a chance to make something good into something even better.

Are you a musician?

If you think composing and arranging music is fun, you’re likely to find programming to be fun as well, and a good fit for your skills. Studies show that playing music can help people learn more quickly and create more elegant and creative solutions to complex problems. Trained musicians and successful coders tend to share certain core competencies: a good memory for details, the ability to sort and prioritize an incredible amount of information, and the skill to recognize and tweak patterns. A musician with programming skills can be a great team asset, proficient in both creativity and code. There are even coding courses and workshops designed especially for musicians. Who knew?

Every musician understands the importance of practicing scales before you play your first concerto. In a line of work like programming, a great way to learn is to practice writing bits of code over and over, then begin to string those bits together in sequence until you’ve composed something wonderful and new.


Consider what makes you thrive in a workplace. There will be stressful days and boring days in whatever field you choose, and to stand out in any field requires hard work. But if finding patterns, solving puzzles, or taking small perfect bits and then using them to craft something larger and much more complex sounds enjoyable to you, buckle up — a new programming career may be exactly the path that’s meant for you.

Learn Software Engineering Online

Client Projects From Our UX Design Immersive Grads

By

Every graduate of our User Experience Design Immersive career accelerator gets the opportunity to work with a real-world client that’s looking to solve a particular consumer problem. The experience gives students a chance to apply the UX design process to real life, as well as invaluable insights and impactful results that they can use to stand out in their job searches.

Here are a few of our instructors’ favorites.


Helping a City’s Communities Thrive

The client: City + County of San Francisco

The challenge: San Francisco’s Community Ambassadors are the bridge between city individuals and city services. In addition to the great things that they do for the city and its people, they have to log every single thing they do. The city teamed up with UXDI students to enhance the Ambassadors’ day-to-day mobile experience and improve data collection.

See the Project

Creating Easier Access to Birth Control

The client: Pandia Health, a startup that provides a convenient, affordable way to get birth control.

The challenge: The client came to GA students with three areas to work on: a new homepage, a design for a forum-like question and answer page, and their onboarding process, which includes an online form for prescriptions.

See the Project

Solving the Bra Problem Once and For All

The client: Posture Wings is a startup athletic bra manufacturer producing patented garments that are bio-mechanically engineered to reverse poor posture.

The challenge: When Posture Wings’s flagship product sold out, they worked with UXDI students to quickly set up an e-commerce site that would support a second production run.

See the Project

Making Traffic Less Miserable for Radio Listeners

The client: nēdl, an app that lets radio listeners search live broadcasts as easily as they search the internet — by keywords.

The challenge: Nadav Markel, a UXDI graduate in Los Angeles, worked to help nēdl grow its user base, as it was missing out on a large segment of the radio listening market: car drivers. He also set out to help make nēdl more safe to use while driving.

See the Project

Go For Gold: GA & Adecco Group Announce Team USA Scholarships Through The Ace Program

By and

General Assembly and the Adecco Group are excited to announce a partnership with the United States Olympic & Paralympic Committee’s Athlete Career and Education (ACE) program. We are sponsoring 10 part-time, full scholarships for current and retired Team USA members. Athletes will work with us to choose a part-time course — free of charge — that best meets their career goals, gaining in-demand skills like data analytics, digital marketing, software engineering, and more sustainable career paths. 

The ACE program, with the support of donors and organizations like the Adecco Group and DeVry University, serves and empowers active and retired Team USA athletes in their pursuit of personal, educational, and professional success.

As the first students get their feet wet in the first few weeks of classes, we’ll be sharing their athlete-to-student journeys on our pages for inspiration — we are confident you will want to get to know them better!

Introducing Alina Urs

Alina Urs is a professional athlete and fitness coach currently residing in Los Angeles, California. Originally from Romania, she was on the Romanian national kayak team and won over 70+ national and international medals. She also represented Team USA at world championships and the Pan American Games. She began training clients professionally in Europe and continued training clients when she moved to New York City, where she worked at Equinox for 10 years as both a top-performing coach and fitness manager.

Alina holds a bachelor’s degree in sports/physical education and psychology. She is also a certified health coach and medical exercise specialist with a focus on immune system health.

Get 2030-Ready With our Free Festival of Learning

By

We are excited to launch The 2030 Movement — a week-long festival of free workshops and panel events focused on coding, data, design, marketing, and career development — in effort to build a better world through tech by 2030. 

Whether you’re looking to dive deeper into data, code your way into a new career, or simply make meaningful professional connections, our robust lineup of  workshops and panel events offers something for everyone . Discover what’s coming up!

Monday, September 14: Career-Proof Skills of 2030

Hear from thought leaders and industry experts about how you can stay in demand in your career — no matter what 2030 throws at you.

  • Morning Motivation: Goal Setting for 2030 8–9 a.m. SGT | 10–11 a.m. AEST
  • Success in the Digital Age: 9–10 a.m. SGT | 11 a.m.–12 p.m. AEST
  • Job Hunting in the Virtual World: 11 a.m.–12 p.m. SGT | 1–2 p.m. AEST
  • Courageous Conversations: 1–2 p.m. SGT | 3–4 p.m. AEST
  • Employable in 2030: Closing the Skills Gap: 5–6:30 p.m. SGT | 7–8:30 p.m. AEST

Tuesday, September 15: Staying Human

As industries begin to lean on technology more and more, learn how you can stay in touch with the personal, human side of business.

  • Morning Motivation: HIIT with lululemon 8–9 a.m. SGT | 10–11 a.m. AEST
  • Driving Better Decisions With Data: 9–11 a.m. SGT | 11 a.m.–1 p.m. AEST
  • Designing a More Human Future: 10 a.m.–11 a.m. SGT | 12–1 p.m. AEST
  • Building Relationships in the Digital Age: 11 a.m.–12 p.m. SGT | 1–2 p.m. AEST
  • Inclusive Design for a Digital World: 12–1 p.m. SGT | 2–3 p.m. AEST
  • Elevating Customer Experiences With Applied Design Thinking: 1–3 p.m. SGT | 3–5 p.m. AEST
  • Man vs. Machine: The Ethics of Cybersecurity: 5–6 p.m. SGT | 7–8 p.m. AEST

Wednesday, September 16: Sustainability and Ethics

What’s good for business can also be good for the planet. Find out how you can make a positive global impact before 2030!

  • Morning Motivation: Big Dance Energy! 8–9 a.m. SGT | 10–11 a.m. AEST
  • EcoTech: How to Save the World by 2030: 11 a.m.–12 p.m. SGT | 1–2 p.m. AEST
  • Smart Cities Shaping the Future: 12–1 p.m. SGT | 2–3 p.m. AEST
  • From Lab to Table: The Future of Food: 2–3 p.m. SGT | 4–5 p.m. AEST
  • How to Make a Profit and Impact: 4–5:30 p.m. SGT | 6–7:30 p.m. AEST

Thursday, September 17: Emerging Tech and Industries

A whole new era of tech is dawning on us. What exactly can we expect industries and businesses to look like in 2030?

  • Morning Motivation: Yoga with lululemon 8–9 a.m. SGT | 10–11 a.m. AEST
  • So You Want to Be a Coder?: 9–11 a.m. SGT | 11 a.m.–1 p.m. AEST
  • Transport Yourself to 2030: 11 a.m.–12 p.m. SGT | 1–2 p.m. AEST
  • 2030-Proof: Demystifying Machine Learning and Artificial Intelligence: 12–2 p.m. SGT | 2–4 p.m. AEST
  • Tech Trends: Fad vs. Future: 6–7 p.m. SGT | 8–9 p.m. AEST

Friday, September 18: Wellness and Resilience

We know you’re ready to trailblaze into 2030, but that doesn’t mean you should lose sight of your own well-being. Let’s talk self-care, self-love and self-satisfaction.

  • Morning Motivation: Strength Class with lululemon: 8–9 a.m. SGT | 10–11 a.m. AEST
  • Getting to Happy: 9–10 a.m. SGT | 11 a.m.–12 p.m. AEST
  • Find Your Financial Zen: 10 a.m.–11 a.m. SGT | 12–1 p.m. AEST
  • Building Resilience in Your Career: 11 a.m.–12 p.m. SGT | 1–2 p.m. AEST
  • Productivity in the Age of Distraction: 12–1 p.m. SGT | 2–3 p.m. AEST

Saturday, September 19: Rising Stars

Arm yourself with the skills needed and hear from professionals who’ve made the switch to the startup and tech industry.

  • Morning Motivation: HIIT with lululemon 8–9 a.m. SGT | 10–11 a.m. AEST
  • The 2030 Social Media Playbook for Start-Ups: 9–11 a.m. SGT | 11 a.m.–1 p.m. AEST
  • The Ultimate 2030 Product Management Guide for Beginners: 10 a.m.–12 p.m. SGT | 12–2 p.m. AEST
  • How to Land a Job at a Tech Startup: 11 a.m.–12 p.m. SGT | 1–2 p.m. AEST
  • Women Funders and Founders: 12–1 p.m. SGT | 2–3 p.m. AEST

Be 2030-ready. Join The Movement. 

Six Steps To Getting Your First Job In Digital Marketing

By

Are you a recent college grad or in search of a new career path in digital marketing? Landing your first entry-level digital marketing job with no experience can seem challenging, especially during a pandemic.

With the consumption of digital media on the rise, companies are opening up digital marketing opportunities to keep up with everyday online communication and content creation, changing the way we communicate and do business. It’s time to be opportunistic and creative in these challenging times to take charge of our careers!

Not sure how to get a job in digital marketing or where to begin? Here is a step by step guide in how to start your career in digital marketing from the safety and comfort of your own home. 

1. Know Your Desired Role

Do your research on what your ideal digital marketing job or role might be. If you look up, “What kinds of jobs are there in digital marketing?”, you’ll find lots of resources on current digital marketing roles. Start by reading job descriptions and understanding the different roles that are available. Once you get a sense of what’s out there, start narrowing down roles to certain categories that you gravitate to such as search engine optimization (SEO), search engine marketing (SEM), content marketing, digital marketer, marketing manager, digital marketing specialist, social media marketing, social media ads manager, and more. Once you get a list of the types of digital marketing roles you prefer, expand your search to different industries. Have you ever wanted a career as a digital marketer in the sports industry? What about a social media manager in the fashion space? Get to know the types of digital marketing job opportunities that are available in the industries that interest you most.

2. Know the Latest Trends

Digital marketing is ever-evolving. With new algorithms, features, and platforms emerging, the needs of the industry vary and continue to shift. Keep up with your areas of interest by engaging on the platforms weekly (i.e. Facebook, Instagram, Google Ads Manager, Mailchimp). You can also stay current by attending virtual workshops, taking online courses, and subscribing to newsletters that provide up to date announcements on your platforms of interest.

3. Learn the Skills

Getting your start in digital marketing requires your investment of time and resources. There are a ton of free resources online via newsletters, blogs, articles, social media, as well as masterclasses and workshops that companies like Shopify, General Assembly, and Later are offering during this time to enrich our communities and help individuals develop new skill sets. Longer, more in-depth certification courses can help you build, practice, and retain your new skills. Additionally, certification helps you stand out to other digital marketers who may be experienced but not certified. 

4. Create an Online Presence

Prepare yourself for your future marketing job and test out your new digital marketing skills on yourself! Create your own social media accounts and showcase your content marketing skills with creative original content, running ads, and linking your accounts to websites you’ve set up or newsletters you’ve started. Hone in on the areas that you’ve expressed interest in when you were doing your career exploration research. Show people what you are capable of in digital marketing within your prospective industry. An online presence will help your prospective employer get to know you as a candidate as well as your passions and interests, which is incredibly helpful to the hiring process.

5. Build Your Experience

By this point, you may have completed certification, honed in on specific skills, and created an online presence. Now it’s time to build your digital marketing experience. Reach out to friends, family, classmates, colleagues or cold email individuals to offer your recently acquired digital marketing skills for their projects. Volunteer your skills to local small businesses or organizations you align with who could use help with creating a digital presence, content marketing, getting started on social media platforms, or keeping up with communication during this particular time of crisis. Build up your confidence as you practice your skills. As you become comfortable, transition to taking on paid clients that can help you build your portfolio as you start applying for a long-term digital marketing role.

6. Create a Network

It’s important to get your name out there online. Do your research on where to find your online community. For instance, if you identify as a woman in digital marketing, find Facebook groups centered around Women in Digital Marketing, join and connect with the members in the group. Be open about your current job search and ask for advice. Members of groups and forums are more than willing to help you in your journey. Get your introduction to the digital marketing world by asking industry professionals for one-on-one career development sessions. This will help build your network while learning about the various possibilities out there for you. Join a variety of virtual meetups, panels, and workshops. Get your name out there, offer your services, gain a list of experts, and connect with them. Have your cover letter, resume, social media handles, and portfolio ready to share.

Get ready to learn, and to be resourceful and entrepreneurial. Don’t be afraid to reach out, cold email, and ask for mentorship and guidance during this time. There’s a warm community of digital marketers out there willing to help you get your start in digital marketing.

Learn Digital Marketing Online

5 Steps to Getting Your First Job in Software Engineering

By

Unsure how to get a software engineering job or where to start? Landing your first job as a software engineer can seem like an intimidating milestone to reach. It feels even harder when you don’t have a computer science background and you’re transitioning from another field, especially one that you’ve worked years to develop a career in. Feelings of uncertainty come in many forms. Your inner dialog may sound like this:

“My resumé isn’t compelling enough to get a job in this new field.”
“I’m a beginner all over again, and I don’t know enough to do this well.”
“If I start over, I’m afraid I’ll fail.”
“I feel like an imposter trying to get a job in something I know so little about.”

If these are some of the thoughts you’ve had when considering a career change, you’re not alone. These are fears that most of my students have expressed in my 5 years teaching at General Assembly, and they are totally logical fears to have. Fortunately, there are clear steps you can take and definitive questions you can answer for yourself which will keep you on a path to landing a great first job in software engineering. They are:

  1. Figure out what kind of software engineering interests you.
  2. Learn the basics.
  3. Build projects.
  4. Begin applying for software engineering positions.
  5. Learn from your interviews.

1. Decide what kind of programmer you want to start out as.

You’ve decided to take the plunge into software engineering, but did you know there are many different kinds of software developers? Jobs in programming run everywhere from front-end engineering (on the design side), back-end engineering (on the server side), to security engineering, DevOps, and testing automation!

Those are some of the more common types that most companies will need to hire for, so the question isn’t, “What kind of engineer do you want to be?”, it’s “what kind of engineer do you want to start out as?” This distinction is important because you should try to work for a company that gets you going with a clear set of roles and responsibilities, but also fosters an environment that will allow you to try out other types of work too. Some of the best software developers I’ve worked with were at one point doing a completely different set of tasks at the start of their career.

So, what interests you the most?

2. Learn the basics of software development.

It goes without saying that you’ll want to acquire some knowledge in computer programming before sending out a bunch of job applications. But where to start? There are a ton of great resources out there, but I’ll outline what I think is a great approach for most people to get a good start in programming knowledge:

  1. Take some classes. Whether it’s through one of General Assembly’s coding courses, a highly rated video course on Udemy, or a coding bootcamp, it’s important to get some experience learning from an industry professional. It’s also good to be able to collaborate with other students doing a similar career change.
  2. Read a lot. The learning doesn’t stop after taking some short-form classes. After you’ve mastered the basics of programming, you’ll be able to effectively self-teach too. Get some good programming literature! Here’s a list of some great books for beginners.

You’ll want to focus your learning on the basics of programming and computer science. Key areas to educate yourself on should include:

  • Programming fundamentals: Variables, conditionals, loops, functions, etc.
  • Design patterns: How programs are structured to be maintainable and easy to reason about.
  • Popular frameworks (such as React, Angular, Express, Rails etc.) are a plus because they provide transferable skills while giving you a competitive edge by staying current. However, it’s still super important to base your education on the fundamentals of programming. A good drummer won’t learn how to play fancy fills without first learning the rudiments, and software development is no different!

3. Build, build, build!

Always have a project to work on. Apply the skills you’re learning by practicing on real-world projects. For example, if you’re reading a tutorial on how to build a user interface with React, try building your own portfolio website using React. You’ll be doing two great things for your career at the same time:

  1. Practicing and honing transferable skills.
  2. Building your software engineering portfolio with actual case studies and proofs of concept.

4. Start applying for jobs.

Software developer job openings are constantly being posted as new companies are founded, existing companies expand, and established companies evolve. When it comes to startups vs. established companies, there are some significant differences you’ll likely come across. For instance, a new startup might have more employee perks, such as flexible time off, but might also demand more weekend hours put in. On the other hand, an older established company might provide a more clearly defined set of roles and responsibilities and a better structure for employee growth.

It’s ultimately different from company to company, but the pattern I’ve seen lately is that startups provide more incentives to apply, with more initial flexibility for the employee. Keep in mind though that startups are by nature less likely to succeed long-term.

5. Use every interview as a learning experience.

You’ll start to land interviews comprised of multiple stages that will vary slightly by company but typically look something like this:

  1. Initial interview with a recruiter or hiring manager that’s usually less technical
  2. A more technical second interview with an engineer on the team, where they’ll get to know your current skill set
  3. Meeting with more members of the team which will usually include a code challenge of some sort
  4. Final interview with a company leader which hopefully includes an offer!

It’s important to remember a few things during the interview process. First of all, most modern tech companies want to hire you, not just your skills. They don’t want to just hear you rattle off a bunch of technical terms that make it sounds like you’re more experienced than you are. They want to know about you, your passions, your curiosity, your drive to learn, and your drive to grow with the company. None of those things are strictly reliant on 10+ years of experience like the job postings might say. While there is a base level of skill that is required, you’ll want the company to know that you are a good long-term fit; that you can become the software engineer that you want to be with them.

Every interview you take will be a culture fit test. Be a nice person, be curious, ask questions.

The technical part of the interview is often the scariest. During the technical interview or code challenge, sometimes you’ll have to write code by hand on a white board with people watching. It can be terrifying unless you really think about the actual purpose of the technical interview. What’s important to remember when prepping for the code challenge is that it’s designed to be hard. A well-crafted code challenge is not meant to be completed in short order. Rather, it’s meant to give the interviewer deeper insight on your current skill set as well as your ability to speak about how you navigate through a problem you’ve been tasked with solving. If you were able to finish the code challenge too easily, the company would have no idea where your skills max out at.

When engaging in a code challenge, the interviewer wants to understand your thought process for problem solving; how you might approach going from the prompt to the solution and the reasoning behind it. For a good code challenge, they want to see your journey through the problem. Of course, you do need to learn the basic fundamentals of programming to even begin a code challenge, but you’ll get to a point where you can at least show the interviewer how you’re framing the problem and coming up with a potential solution. Every interview is a learning experience.Keep these tips in mind. You’ll get better at the process, and you’ll eventually land that software engineering job where your new career will really begin!

Learn Software Engineering Online

4 Tips for Preparing for a Coding Interview

By

If you’re applying for a software engineering position of some kind, chances are you’ll encounter some sort of technical interview or coding challenge. For newer engineers applying for software programming roles, the coding interview is oftentimes the most terrifying part. However, with a few interview preparation tips and things to consider, the technical interview will seem a lot less scary, and will hopefully be a valuable learning opportunity during your job search. Let’s break down a few helpful tips:

1. Build the hard skills.

Get in the habit of regularly doing code challenges. It’s a much more effective way to prepare for the coding interview than trying to cram a bunch of studying in before the big day. It’s important to schedule time each day to attempt at least one code challenge. You’ll get better at solving them, and you’ll also get better at outlining your process and speaking to it. A few great websites to help you practice code challenges in varying degrees of difficulty include: LeetCode, Codewars, and AlgoExpert.

These code challenges help build the essential hard skills you need to technically perform well in a coding interview. If you’re applying for a mid-level position as a software engineer, you’ll want to feel pretty solid with these types of challenges in your interview preparation. If you’re gearing up for your first technical interview as a junior engineer, you’ll want at least some exposure and practice with these. 

2. Don’t forget the soft skills.

Mastery of coding challenges is only half the battle, so don’t forget the soft skills. Throughout the entire interview process, including the technical coding interview, there are a lot of things that interviewers are looking for besides your ability to code. These other skills have to do with how well you communicate, collaborate, talk about the problem at hand, your leadership skills, your drive to learn, and generally speaking, how nice you are. Soft skills are often overlooked by candidates and can be deal breakers for a lot of coding interviews.

A company that’s worth applying to will want candidates that have strong soft skills, sometimes moreso than hard skills, because they show how well a person can grow within the company and develop those hard skills over time. This is especially the case for junior software engineers.

When you practice your code challenges, see if you can buddy up with someone and take turns doing mock interviews. Practice talking through the problems as you work, asking questions, giving each other hints here and there, and revealing your ability to lead, collaborate, and persevere.

3. Acknowledge multiple solutions.

This is the “cherry on top” for an interviewer: a candidate that’s not only skilled enough to work through the problem and has a personality that fits the company culture, but can also defend their solution and mention alternative approaches. This shows that you’re not just going with what you were taught or what you read online, but that you also acknowledge that there are multiple solutions to the same problem and have considered which is most appropriate for a given context.

As an interviewer administering a coding problem, I would prefer to see the simpler solution over the best solution, as it will give me more time to talk with the candidate. Now, if that candidate can also suggest alternative approaches and defend why they selected theirs, that’s an instant win. Bravo!

An example of this might be a challenge where you’re asked to design a search function for a video streaming app. You might use an inefficient algorithm for the sake of quick implementation during the job interview, but then mention a more appropriate algorithm that would otherwise be used in real life. Speaking of algorithms…

4. Study your algorithms and data structures.

This goes hand-in-hand with the hard skills, but deserves its own section. You don’t need to be a master of computer science to ace a coding interview, but there are some standard algorithms and data structures that you should feel good about referencing, or at least mentioning and talking about. For instance:

  • How does a bubble sort work vs. a merge sort?
  • What’s the difference between a stack and a queue?
  • What’s a linked list? What about a hash table?

It’s likely that you’ll be asked any of these interview questions, so becoming familiar with and being able to speak about them to a degree is a good thing. Cracking The Code Interview by Gayle Laakmann McDowell is a great book that covers all of the essential algorithms, data structures, and how to implement and use them in sample code challenges.

The coding interview is an opportunity for you to not only show off your skills as an engineer, but also to demonstrate how well you work with others. It’s designed to simulate what it’s like to work with you on a team. So be yourself, study and practice, take a deep breath, and go crush that coding interview!


Learn Software Engineering Online

A is for Andragogy

By

Think of a great learning experience you’ve had. 

How would you describe it? You might say:

“Interactive,” “Engaging,” “Hands-on,” “Relevant,” “Practical,” “Digestible,” “Clear and easy to understand,” or “Fun!”

We’ve asked this question hundreds of times, and the answers are rarely surprising. Yet, when we ask another question, “How many of the classes you’ve taken actually fit these descriptions?” sadly, the percentage is often quite low — but not for our students. 

At GA, we’ve mastered the magic of delivering great learning experiences for each student and client. 

Interested in what this means? Read on. 

Principles of Andragogy

Andragogy is an esoteric term meaning the method or practice of teaching adult learners. If this is the first time you’re seeing the word “andragogy,” you’re not alone. 

The reason we mention this term is that we’re often asked about our “pedagogy”, in reference to our learning theory. Considering that the word most commonly used to discuss learning theory (pedagogy) has a prefix that means “relating to children” (ped) says something about the way society thinks about education. Namely, that learning is primarily for children. This has never been less true than it is today, where even successful professionals with years of post-graduate education and executive experience need to continuously upskill to keep pace with our rapidly changing world — now more than ever.

The distinction between andragogy, the adult learning methodology, and pedagogy, the children’s learning methodology, is important because while many good learning experience qualities such as engagement and interaction apply to both adults and children, there are some key contextual differences.

In both cases, excellent educators reference Bloom’s Cognitive Taxonomy to ground their courses in observable learning outcomes, and aim for active, hands-on learning with multiple opportunities to check for understanding and provide feedback along the way. 

However, we all understand that adulthood differs from childhood. As adults, we have an abundance of two things children typically have less of: choice and responsibility. 

What does this have to do with learning design? When you start thinking about taking a course or changing your career as an adult, you are plagued with different considerations than you had in grade school:

  • Is this worth my time and money? 
  • Will I be successful in learning this? 
  • What kind of people are going to be in my class? 
  • Will this be useful for my unique set of circumstances?
  • Should I just Google it? 

Designing for the Adult Learner

Six key actions tend to assuage adult learning anxieties, and help learners construct individualized meaning from a shared learning experience:

We know that adults learn best when they are active in the learning experience, when they are working toward solving a realistic, relevant, and interesting problem, and when they can show up as a whole person with individual experiences, goals, and preferences. Adults are not empty vessels… they are fully developed and experienced individuals.

So how does this knowledge impact our approach to learning? We design classes where the instructor does not just push information to the students; the instructor creates space where students can share their perspectives, be social, build connections, hear from other people, stretch their minds, and enjoy the process. 

If you’re having trouble picturing a unique GA learning experience, here is an example of what it looks like in practice: 

As a warm-up activity, we ask groups of participants to “be the search engine.” We give them printouts of five different Google search results from a previous search we conducted, such as “lunch.” We then ask them to arrange those printouts in the order they should be returned to the searcher in response to a few rapid-fire search queries, such as: 

  • “Lunch” 
  • “Best Restaurant to Take Clients” 
  • “Vegan Lunch Downtown” 

This succession of questions leads students to look at the details of the pages — their titles, contents, references to location, date published, etc. — to make and discuss these decisions. These details are factors of how search algorithms work and factors they will need to optimize for in their SEO strategies. 

The exercise illustrated above takes about ten minutes, roughly the same amount of time it would take the instructor to explain how search engines work. However, the exercise primes the students with decision-making, real-life engagement, and meaningful, useful information that can later be built upon. Most importantly, the students have not just heard the information; they have processed it — and had fun along the way.

Instructional Design in the Digital Age 

At GA, we deliver learning across two spectrums: the experience spectrum, which ranges from absolute beginners to field professionals seeking to remain current, and the duration spectrum, which ranges from 20-minute eLearning modules to 12-week, 480-hour immersive courses.

Designing a relevant and active learning experience across these spectrums is not easy, but it’s core to our proven success in digital skills education over the last nine years. Our instructional design practices are rooted in: 

  1. Modern Digital Design Practices
  2. Learning Theory and Sciences

Understanding each of these fields helps us to better utilize the other. 

Modern digital design practices include user research, design thinking, agile development, data analysis, and rapid iteration. These practices are typically core drivers of the last 30 years of technology innovation, yet too many educational institutions have been slow to embrace them. By leveraging these more modern practices into our instructional design process, we can make better use of learning theories and sciences that largely emerged in the 20th century, including the behaviorist learning theory and constructivist learning theory

For example, Nir Eyal’s book, “Hooked: How to Build Habit-Forming Products,” elaborates on a behaviorist learning theory used by UX designers and product teams to keep users coming back to their platforms. Think of that addictive social media feed, or how you can’t resist tapping an app with a big red notification bubble…

This behaviorist strategy is also well-suited for learning beginners just starting in a field, or those independently working through material on a digital learning platform. Through data analysis, we’ve seen this user need come through in myGA (eLearning) lessons via requests for “more knowledge checks,” and we’ve added them accordingly. Those frequent checks help learners gain confidence and validate their understanding, which is particularly important in the absence of a live instructor. 

As a learner “climbs” Bloom’s taxonomy into greater depths of knowledge in a field, frequent, short exercises start to become irritating, and gamification attempts can feel juvenile. We’ve seen this in students’ feedback on long-form courses where they’d prefer fewer activities. This feedback led us to consolidate those activities into select, more robust exercises. 

Meaningful, more robust exercises are examples of the constructivist learning theory, which suggests no singular “truth,” and each individual will derive a personal meaning through action and reflection. At GA, this shows up in all of our long-form courses, where in the end, students solve real-world business problems of their choice in a capstone project. 

Guiding learners to make their own meaning through project work is great when you are leading a classroom of professionals in solving a business problem using new digital skills. Still, it can leave people lost in certain scenarios, i.e., if applied in a room full of first-time programmers trying to understand what a Python loop is. That’s why both constructivism and behaviorism strategies are effective for different purposes. 

Through user research and data analysis of the thousands of learners collected over the years, we know how to deploy the right strategy at the right time, and iterate in rapid cycles based on continuous feedback from our instructors and learners. 

Bringing Everything Together

We’re passionate about delivering best-in-class education, and hope a deep dive into our approach to learning has provided some helpful insights as you explore an upskilling journey that will ensure both personal and professional growth for your teams.


Alison Kashin is the Director of Instructional Design at General Assembly.


Since 2011, General Assembly has trained individuals and teams online and on-campus through experiential education in the fields of technology, data, marketing, design, and product. Learn more about how we can transform your talent, and our solutions to upskill and reskill teams across the globe.