On Completing Basic Bonfires, Consistency and Networking

In this update I talk about how it feels (as a stay at home mom who codes) to finally have completed the basic bonfire challenges on Free Code Camp, what I will be working on next, what other outlets I’m finding to learn,  why consistency trumps flash-in-the-pan learning and how I’m volunteering both to give back to and to network in the community.

Advertisements

Free Code Camp Bonfires and Campsites

In this video I talk about what it’s been like to work through the Free Code Camp bonfire challenges, attending the Free Code Camp Campsite in Austin and starting my own in Killeen, and my thoughts about attending a coding bootcamp.

happy coding!

Reverse a String Free Code Camp Algorithm Challenge

Here’s the challenge:

Reverse the provided string.

You may need to turn the string into an array before you can reverse it.

Your result must be a string.

the code:

Screenshot (1)

by the way, when this initial setup is run, the output is hello.

so first thing I do is open all the helpful links I’m given to definitions in Mozilla Developer Network in my tabs so I’m ready to reference them.

First off,  we can see in the string definition that a string is a bunch of characters, in this case “hello”. They tell you you may need to turn the string into an array before it can be reversed, so that’s the first thing I look at.

I look at the splitting a string tab. Here I see they give me the following syntax:

str.split([separator[, limit]])

They tell me that the separator is optional and is used to split it by specific characters. If separator isn’t used it will return an element with the entire string. If it’s empty, it will return an array of characters. Bingo! (the limit is a number specifying the maximum splits you want-we don’t need to use it for this problem).

So here is what I add:

Screenshot (5)

Keep in mind that we have to put in brackets to create an empty string for the separator, or else it will return the original string as one array element which won’t help us to reverse the individual letters. Now when I run it, the output is [“h”, “e”, “l”, “l”, “o”] which means it’s now an array of individual characters. YAY! Now on to reversing.

this one tripped me up a bit because on MDN it specifies arr.return and we are coming from a string, but I googled to find how we would do this and found an example implementing this from a blog post 10 ways to reverse a string in JavaScript. So here I just added on .return to my function:

Screenshot (6)

this outputs [“o”,”l”,”l”,”e”,”h”], just what we were needing!

Now for making all the individual characters in the array join together again to make a string, we use the join() method. Just like with the split method, we need to put in the opening and closing brackets so that the characters aren’t separated with a comma. Here is our final working function!

Screenshot (7)

the output is “olleh” which is exactly what we wanted.

I hope this post helps you pass the challenge! I know they can seem daunting!

Engineering Your Tech Career with Women Who Code ATX

Greetings friends!

Last night I attended a free talk called “Engineering Your Tech Career” with panelists Holly Gibson, Software Engineer at Women Who Code; Tricia Katz, Web Engineer at Mutual Mobile and Sara Inez Calderon, Co-Director at Women Who Code. The event was held at the General Assembly Campus at We Work in downtown Austin. It was my first in-person tech meet up, and to be honest I was really nervous about going. I’m not used to dealing with downtown traffic and parking and the idea of introducing myself to people makes me queasy, But everything went great and I’m happy with my decision to attend. I got there on time, learned quite a lot, and even managed to force myself to meet a few people. Here or some of my takeaways.

Have A Strategy

Having a strategy for your career is the most major task to accomplish, as it is all-encompassing. Where you want to end up can determine what particular facet of programming you specialize in, which languages you learn, which platforms you work on, who you meet, which conferences you attend, and even which coding bootcamp you choose to attend. There is a lot to know about tech, and not even the most seasoned professionals can know it all. This is why it’s so important to decide where you want to end up, and do everything you need to do to get yourself in that role. Not sure? Check out local job descriptions, or talk to people already working in the industry. Even certain locations center around specific skill sets, so keep that in mind if you’re set on living in a certain area. Once you determine where it is you want to end up, specify what skills you already have, what skills you need, and make a plan on how you’re going to fill in the gaps. Self-taught programmers have gaps in their knowledge, as do bootcamp grads and computer science grads. There are so many options online as well as books, videos, webcasts, lectures and events to help you learn the skills you need to get where you want to go. The hard part is finding out which ones are best for you on your particular journey.

Don’t be Daunted

Interviews in tech can be tough. In many cases the interviewer is a senior developer who will ask you the same questions that they were asked for their job interview. It might not be fair, but oftentimes they are more interested in knowing how you think through solving problems under pressure. If you have no idea what the answer may be, talk about how you would go about finding the answer or steer the question to something else you learned- get creative and explain how you’d solve the problem in another language! It’s not always necessarily about what you know, but about what you can learn. Some other fun things about interviews is they can take a long long time. Some tech positions have an interview process that spans for 8 weeks. Telling your interviewer that you want to be honest that you are interviewing at other companies is a really great way to speed things up.

Research the Company

Though this is common job-seeker knowledge, it’s so vital to find out about the company before you even apply for the job, and especially before you go to an interview. Look on GlassDoor for reviews and employee salaries. Know what you’re worth. It’s ok to ask more skilled engineers in your network about what your skills are worth in your local tech job market, because they in fact know from experience. If you really want to work at a company but the pay is low, ask for more! Even if they can’t pay you more, if they like you they will throw in perks like extra vacation or flexible hours to their offer. Be wary of companies that offer too many perks though. For example, catered dinners may seem like a perk, but you might want to ask yourself why they would need to cater dinner in the first place. As pointed out by the presenters, it is possible to find jobs that have a standard workweek if that’s important to you.

It’s important to remember that this is a job seeker’s market, as there are so many jobs to be filled and not enough bodies to do so. If you get offers to interview at awesome companies, be up front about your salary requirements before you agree to interview. Knowing your worth and having the confidence to command the salary you deserve separates you from the applicants who are willing to take less simply because they don’t know their value. In tech things move fast. 2 years is considered a long time to be at one company. Don’t be afraid to go to many many interviews until you find the right position (Sara went to 40 interviews before she got her first job offer). Interviews are great practice, and with each one you go through you will become more and more confident in your abilities.

Be Google-able

Potential employers will google you. Make sure what they find is professional, and that you have material that is relevant to your tech career come up. An impressive and active Github account, a stunning professional portfolio that reflects your skills and abilities and a fleshed-out LinkedIn profile that shows you are experienced ease the mind of the person who looks you up. An informative tech blog, youtube video presentations or relevant articles on Medium also give you credibility and can set you apart from the pack. Make it easy for recruiters and hiring managers to find you online by keeping up with your online presence. HootSuite is a website that makes it easy to automate and schedule posts, tweets, blogs and other updates on all your social media accounts on a regular basis.

Twitter is your new BFF

If you’re in tech and you’re not on Twitter, you’re putting yourself at a great disadvantage. Not only are all the major tech companies, startups and major players in the industry on Twitter, but so are all of your co workers and fellow students. It’s necessary to join the discussion to show that you care about what’s out there, who’s doing what, and what’s current. When you make tweets, it’s important to be personable, not personal. Other people most likely follow you on twitter for your professional savvy, not to know the ins and outs of your everyday life. Facebook is probably more suitable for the intimate details. Keep your account career centered, and if you can, try to come up with your own personal “brand” and apply it to your twitter activity. For example, Tricia focuses on working with charities, some that concern children, so she keeps her tweets PG rated and focused on diversity. Think about your tone and the topics that you tweet about.

Your LinkedIn Isn’t Set it and Forget it

Did you know when you look at profiles on LinkedIn, the people you look at know? I didn’t! Actually, I found out it is a good type of “stalking.” In fact, if you look at all the people that work at a company, they might just invite you to come swing by for an interview over LinkedIn itself. You should have a professional, high-quality profile photo (offered as a free service at some coding events), all relevant professional experience as well as volunteer experience in the field. Keep it updated with every single project or activity you participate in! The more fully fleshed out your profile, the better.

Never Stop Learning

In some occupations it may be true that once you get a job you’re golden. In tech that may or may not be the case. Part of this is due to the fact that things move so quickly in tech that it is a daily challenge to stay on top of it. Like Holly was at her first position, you may be the only tech employee there if you’re working for a small start-up. It may be that you work with a lot of senior engineers that are simply to busy to offer you the mentorship that will advance your career. Either way, it is most likely that you will need to go out and seek your own training and mentorship outside of the office. If you’re female, the opportunities abound as there are many organizations aimed at women, including Women Who Code, Girl Develop It, Rails Girls and many more. Coding bootcamps regularly offer free events and workshops to everyone in the community as well. Check out meetup.com to see what groups are in your area. Often the classes and lectures that are offered are free of charge. Other online options for continued learning and professional development are free courses from Harvard, Princeton and Stanford offered through Coursera , Kahn Academy, and many others. Udemy, Treehouse, Lynda, Codecademy, Free Code Camp and others are all well-known online platforms that offer courses in web development, design and programming languages. All of the developers I met listen to podcasts and youtube videos concerning tech related topics during their commute, when they do chores, almost anytime they get a spare moment.

Put Yourself “Out There”

Though it’s great to delve into online courses, don’t forget to actually put yourself out there and meet people in person. This is the way that many find jobs- because people tend to hire others that they already know. If you have enough knowledge and experience under your belt to actually give a presentation or teach a class your odds of getting a job offer are even better as you already appear to be an expert in that topic. When you attend events don’t forget to introduce yourself and come prepared with business cards so that people you meet can contact you in the future and keep in touch with you. If you’re not the one giving the talk, it’s always a good idea to go up to the speaker afterward to ask questions. You never know when you might meet someone that you click with and find yourself an amazing mentor! Meeting fellow newbies is also a great opportunity at these events, as they can share opportunities they hear about, their own professional experiences and give you feedback when you need it. Volunteering your time and expertise is also an excellent way to get experience and gain credibility in the field. Don’t forget to add any relevant experiences to your LinkedIn profile!

Breaking into tech can seem like a never ending battle, but the good news is that advancing becomes easier after you get a few years of experience under your belt. Take these tips from the professionals at Women Who Code and increase your chances for successfully engineering your career in tech. If you have any other tips you’ve learned or heard about, please mention them in the comments!