Top Performing Coding Bootcamps

 It used to be that companies mainly look for developers from top universities, like Stanford, MIT, UC Berkeley. Now, things are changing. Computer science education is more accessible online. We’re standardizing technical skill assessment.
Many companies are hiring people who learned their coding skills through ‘untraditional’ means. VMware, JP Morgan Chase and Puppet…to name a few. By ‘untraditional,’ we mean:

 

  • Bootcamps
  • Junior colleges (or acceleration programs at universities)
  • Online resources (Self-taught)
By 2024, there will be 1.4 million new developer jobs with only 400 thousand CS grads. This mismatch means employers must look at elsewhere to fill the skills gap.
One big hesitation from employers has been: How do you know if these folks actually have the right skills?

 

At HackerRank, we help companies find the right developer based on their skills. Not pedigree. Using practical coding challenges, employers can standardize the way the measure skills. This is the evolution toward skills-based hiring.

 

The White House launched the ‘TechHire Initiative’ in 2015 to promote skills-based hiring as a solution to the skills gap in America. They partnered with us last year to host a nationwide online hackathon. ‘Untraditional’ developers from underrepresented cities solved coding challenges. Employers included Jaguar, Agile, WebMD among many others.

 

The beauty of standardized skill assessments is that you get an apples-to-apples comparison. We were curious: Which bootcamps performed the strongest on HackerRank coding challenges?
TechHire, which is powered by the Opportunity@Work nonprofit, targeted developer communities in 9 states. Fifteen bootcamps participated, and The Software Guild stood out with the most participants. And they had the strongest performers too.

 

We looked at bootcamps with the most developers who made it to the 70th percentile. Dozens of employers sponsored the event in kind, and we sent them contact info of the 70th percentile.

 

 

 

Which Languages Were Most Popular in the TechHire Hackathon?

It turns out, bootcamps focused on Javascript more so than traditional colleges. Javascript’s popularity has been skyrocketing. Because it’s — well — everywhere. It’s used by 94% of all websites.
“Bootcamps have a limited amount of time to teach, and Javascript is a more practical skill in the industry,” says Dr. Heraldo Memelli, the lead content curator at HackerRank. “Javascript has increasingly become of the one of the most sought after skills. It’s a tool that new developers can use to build things fast.”

The Bottom Line

Strong programming skills can come from anywhere, from unlikely towns and unlikely backgrounds. It’s hard to measure someone’s skills based on a certificate of completion. Standardized skill assessment is expanding the talent pool for companies. It uncovers untraditional talent.
Untraditional developers may not look as good on paper. But they could have the drive, ability and skills to do the job. All you have to do is give them the opportunity to prove their skills to you first.

If you enjoyed this piece, subscribe here to get a quick note the next time we have an interesting, new piece on tech hiring.

If you liked this piece, you might like:

 

Helping Veterans Who Code

Roughly 10%* of all job postings in the military require technical skills (like crypto technician). Yet, the military doesn’t offer a clear transition path into software engineering roles.

When Jon Deng was deployed as a field artillery captain in Baghdad, part of his job at the tactical operations center was managing critical intelligence reports.

“I had to consolidate information on one Excel spreadsheet, which was constantly updated in real-time by multiple people,” Deng says. “It was tedious…not very automated at all.”

It was precisely at this moment when his inner hacker started growing restless. Today, as Jon prepares to transition out of the military, he is using his self taught programming skills to look for a web development job.

Jon is one of 250,000 veterans who will leave the military this year; 3-5% of which have the technical skills to jump into technology roles directly after the military. This is according Mike Slagh, founder of  VetTechTrek, a nonprofit that connects veterans with tech companies through regular tours. Slagh, a veteran and serial entrepreneur, says companies can hire roughly 12,000 skilled veterans for technical roles, and thousands more for operations and customer-facing positions.

Currently, Mike is helping vets like Jon find job opportunities in tech. But his operation is very manual. “I was giving one-on-one advice to over 1,000 veterans,” Slagh says, “and I wanted a way to scale, automate and credentialize the vetting process to help veterans find careers in software engineering.”

Take someone like Jon, for instance, who has exceptional coding skills, is driven and an all-around strong candidate. “When we connect him to tech companies, how can we prove to companies like Uber or Facebook—who have a very high hiring bar—that Jon can in fact code well?” Slagh says.

Today HackerRank is proud to announce that we’re partnering with VetTechTrek to help Mike Slagh grow his operation with HackerRank’s standard credentialing system. VetTechTrek will be using HackerRank to evaluate all veterans’ coding skills, enabling veterans to prove they are qualified for software engineering roles. We’ll work together to create more opportunities for companies to hire skilled veterans in the near future.

We sat down with both Mike and Jon to learn more about the state of hiring for veterans today, and how this partnership can help veterans who code:

Jon, tell us about how you learned how to code while in the military

I started on Code Academy. But it was pretty overwhelming. There are all these languages, but what am I supposed to be learning? We were working 7 days a week, 12 hour days. There was some time to study, but I was tired a lot. I didn’t spend as much time as I wanted to.

I was all over the place because I was interested in a lot of different things, and I wasn’t sure what to focus on. I became interested in web development, so focused there. Then, I got into Hack Reactor. I have a very understanding boss who allowed me to join the program while I transition out of the service.

Is it becoming more common to learn how to code while in the military?

Generally, I’d say it’s becoming more common. In the beginning, I felt like I was on my own. Nobody in the Army had any idea of the stuff I was doing. People were asking, “Are you playing video games all the time?” It was hard to explain why I was getting so little sleep. There’s a gap in understanding technology.

How did you get involved with VetTechTrek?

I felt sort of alone, what am I doing? I discovered this universe of vet transition services organizations. It’s hard when you don’t have a sense of direction. I applied for a “trek,” which is a tech company tour, but didn’t get in. I kept in touch with Mike from VetTechTrek.

I also got involved with Operation Code, an open-source volunteering skill training program on GitHub for military and families.

Did you apply your coding skills on the job in the Army?

There’s an intensive leadership course in the Army called Ranger School. We were sending a lot of people to go to Ranger School, but people were failing very quickly. Some were failing as early as the second day. My boss had to report on what we could do to solve this.

I was able to use my Python skills to do an analysis to understand what the likely indicators or attributes are that make someone likely to graduate. I had this idiosyncratic spreadsheet of where people were from and what their job was in the Army in order to do an analysis of which people had the highest likelihood to graduate and which organizations had good preparation for the Ranger School.

How does the transition really work?

In the military, everything is deeply tied to your career progression. And there’s usually a credential associated with what you do. The Department of Labor matches jobs to other jobs that seem similar in civilian sector instead of matching skills to abilities. For instance, Mike was a bomb disposal officer in the Navy, so he’d be matched to become a supervisor at a chemical plant or nuclear plant. It doesn’t quite make sense because it doesn’t factor in Mike’s current skills.

If you’re in the military, and you’re looking to transition into a software engineering job, what do you do?

I looked into it. And to be honest, there’s not a whole lot of resources specifically for software engineering training. There are courses for, say, managers of a tech distribution center, tech salesman or database administrator, but nothing specifically for software engineering. But on the upside, there are a lot of online resources.

What do you think about VetTechTrek’s plan of using coding assessments?

Being able to show an objective score of your technical skill is one big part of the solution. Going from the military to software engineering is a pretty big career switch, so it’s helpful to have an objective evaluation. The other critical aspect is the network. I’ve found that developing a connection, and knowing someone in your target community, allows you to get higher.

That’s why organizations like HackerRank and VetTechTrek are going to be critical in making the transition to software engineering.

For more details, here’s a Medium post I wrote on how I learned to code in the military.

 

*10% is based on an analysis done by Mike Slagh, founder of VetTechTrek

 

In the Fight for Talent, it’s All About Speed

imageedit_1_4096165470About a month ago, Phil Hord changed his status from “not looking” to “actively seeking.” What followed was like a blender of job offers swirling in his brain.

Few professionals are hotter commodities today than Phil. He’s a senior software engineer and technology team leader who’s worked on some of the hardest architectural problems in technology for decades at Cisco.

Today, Phil’s skills are the next best thing to priceless. Take a look at this trend graph, courtesy of Indeed, which compares the ratio of job seeker interest versus postings for software engineers (blue line) and senior software engineers (orange line):

Screen Shot 2016-08-09 at 11.52.35 AM

 

 

 

 

 

 

 

 

 

While there are more than two job seekers for every software engineering job posting, there’s only one job seeker for every two or so senior software engineering jobs.

But before he joined one of the most sought after professions of the 21st century, Phil was the quintessential “nerd”—the first generation of programmers to play with computers as young preteens. We sat down with him to pick his brain about what it was like growing with the industry, his recent job searching experience, and what he look for from companies while juggling multiple job offers:

Phil, how did you get into computers/software?

At the time, it was unusual but I started playing with computers in middle school. That was the late 70s, early 80s.  And they didn’t come with much on them. You had to write code to get them to do anything. I taught myself to make them do things. 

Technically, you were part of the first generation to use commercial computers at home?

Yeah, I suppose that’s true. My generation was the first to play with them as children. When I was playing around with it in middle school and high school, I wasn’t aware that it could be a career.

And so you went to Florida State to get your Computer Science degree, and have been working on software development ever since.

Yeah, I’ve been working at Cisco for 15 years. And before that I’ve worked at more than 6 other high-tech companies, including Hayes Microcomputer. I’ve lived through the dot com boom, so I always have a good pulse on how hot the market is by the number of recruiters sending me messages. It’s definitely feels hot right now.

And what’s changed for you recently that warranted a change?

My group at Cisco’s been bought by another company recently, and the new company’s practices and development expectations don’t mesh with the way I like to work and get things done. My kids are now off to college, so we’re empty nesters. Now happens to be a good opportunity to find another job. It was just about a month ago that I decided it was time for something different.

So tell us about your job search experience today:

So I changed my job status to “actively looking,” and within 24 hours I was contacted by a recruiter at a major financial company in New York City.

I knew that a lot of companies use coding interviews with HackerRank challenges so I was playing on HackerRank to get a feel for interviews again. I actually first found HackerRank a year or two year ago when I wasn’t being intellectually challenged enough, and I was looking for interesting puzzles to solve.

7

 

I did a few Coursera classes, like one on functional programming in Scala, and that was great but then it was over. So, I enjoyed the challenges on HackerRank; I thought I’d build some reputation on there.

So were you challenged?

Yeah I really enjoy the HackerRank challenges – of course there are some that are too easy, but they’re marked as such.

Awesome, so tell us about your job offers:

So, with this NYC company, we went through the discovery process to figure out whether or not it’s really feasible for me to move my wife and I all the way to New York. We’d never considered it before, but we got to talking and it sounded like—given the right compensation package—we could sell our car and enjoy the city life. We’re living in Georgia now. We were pretty much getting into the mindset that we’d relocate to New York City.

It was kind of a scary idea for us, it’s such a new environment. But we moved forward and were ready to fly me out to NYC. There was a lot of angst and uncertainty, but I added a day to my trip to explore the city to help me feel better about it. I interviewed with the team for 5-6 hours in NYC that Monday. We all forgot about lunch. That Wednesday they called me and wanted to make me an offer.

So, verbally, I said that the company, team and work sounds exciting. And the change to the city could be interesting too. My wife was on board. After some negotiation, I verbally said yes, if they could meet my number.

So you were pretty set on this big NYC company?

Yeah, I had wrapped my head around it and felt it was a good move. But a day or two before I flew out to NYC, I got this email invitation to complete a HackerRank challenge for a common app. This sounded interesting to me. I said why not, since I was already in this coding challenge mindset. I didn’t think much would happen from it.

As soon as I got back from the NYC interviews, Amanda Crosby, from the HackerRank candidate success team, called me to ask me a few more questions about my background. That was quick. But I told her that I just got back from interviewing with another company in NYC.

The next day, I got a call from Pure Storage saying they were impressed with my HackerRank challenge on the common app. So, I had to tell them… I’m sorry but I’m in final negotiations with another company. I felt really bad about it. But the recruiter was telling me more about the opportunity in Silicon Valley, and he really did his job. He emphasized how the place is very fascinating and fun.

6

He said we can make this really fast. We can do a phone screening in the morning, fly you out Friday and get an offer for you by Monday.

I said…well, I really need to consider all of this and take some time.

Anyhow, we ended up doing a phone screen at 11:30 AM, and I really enjoyed our discussion. We talked about compilers, we explored the internals of C++ and I guess I did well. But while I was on that call, I got a voicemail from the NYC company saying they agreed to my number. So, I wanted to be a man of my word, so I verbally said yes.

But Pure called me 20 minutes later and wanted to fly me out on Monday, but I said I just accepted another offer.

Honestly, I really didn’t feel like playing them against each other for the offer. I did my negotiation up front with the NYC company, so Pure was working hard to match this number.  All of the angst I felt in making the NYC decision just doubled down on me. It was a really hard decision. Both teams were offering interesting challenges, great teammates and both had dynamic cities. Ultimately, I leaned more heavily toward Pure Storage which looked really fun (with better weather). And Silicon Valley has a lot of opportunities anyhow, so the move there seemed like it was a lower risk.  Also what really intrigued me is they recently became a public company, so it’s an exciting time. And they granted RSU’s, which was a great, interesting advantage.

Fortunately, the recruiters at both companies were really understanding when I told them the entire backstory of how fast everything was happening.

Wow, that does sound like a whirlwind. So it came down to the extra qualities, like ego-free workplace and the stock options

It was a tough decision — both companies had great people — and both had really tough challenges in live interviews. I really appreciate that because it means they’re selective about who they’re bringing in. Ultimately, I was intrigued by Pure’s RSU – not many startups have that.

But again, it was a primary selling feature that they look for personality fit and they want people who are going to be supportive, communicative and helpful– not a bunch of defensive egos guarding their territory.  There’s a lot of smart people, but inflated egos you have to be careful about.

Meanwhile, there was a third company who wanted to talk to me through, and I just completely forgot about them through all of this. This was taxing enough. It helped to have supportive recruiters at both companies, and Amanda from HackerRank. These are tough conversations to have, but these folks did their job well.

At this point, I just wanted to be settled. And they understood that.

Wow, sounds intense. So, from your perspective, is there really a shortage of senior engineers like yourself, justifying this instantaneous battle for you?

It’s certainly hard to hire someone at my level because partly because i’m a little less inclined to change jobs. People just 10 years older than me are looking towards retirement, and they’re really cautious about changing. They don’t want to go through this. They’re generally paid well, they’re experts, and the company really doesn’t want to lose them either.

In my case, the company and teams were going through a transition.

Interesting. And how do you like this new way of job searching through coding challenges versus the traditional resume and job app?

It’s amazing, really – as a programmer, it feels like HackerRank and this common app in particular, gives the recruiters the tools to find the talent and a way to measure them objectively and quantitatively.

8

My wife’s going to have to find a job in Bay Area. She works in genetics  in cancer labs. And I know a lot of other people not in software who are going to have a hard time getting follow-through on jobs.

Especially at this age.

I like the common app because it becomes easy. I can sort of pick a test, but it’s not like a multiple choice test. It’s real evaluation. It’s real insight from people. I’ve had a lot of sudden recruiting interest from HackerRank, and because of this kind of code visibility and social credibility from just putting myself out there. It’d be great if this could be extended to other fields.

It was like a feeding frenzy once I got exposure.

Do you have any advice for other engineers juggling multiple job offers?

Wow, there are so many things to consider.  Be upfront with the different recruiters, once you get to the offer stage, and let them know you are expecting or have another offer.  If they’re serious about hiring you, they will want to help you by reminding you of the reasons you should choose them. They may even sweeten the offer. Remember they’re not objective in this decision, but let them give you their sales pitch so long as it helps you focus.  If you know any other recruiters or HR people in the industry personally, ask them for advice and insight.  I had a family friend coaching me along the way, and Amanda (HackerRank’s candidate success team) was a valuable resource, too.

Another thing to worry about is the cost of living.  If you’re going to move for a job, look seriously at the cost of living there, including the difference in taxes and other expenses.  I’ve been hesitant about the Bay area in the past because of housing costs there, but looking at NYC prices for a week gave me a new perspective. I found some online paycheck calculators that gave me a dose of the reality about my new after-tax monthly income.  Make sure you understand the benefits offered by each company, like health insurance premiums, 401k matching, commuter programs, and so on.

But something that helped me a lot was to ignore the actual numbers and just think about the companies. I thought, assuming the pay will be the same, which company excites me, or is the most welcoming, is in the best city, or has the best work or team fit for me?  This helped me eliminate a couple of local offers that would have been much easier to take, since I wouldn’t have to move, but which were ultimately not as good a fit for me.

Try to get some sleep.  Don’t drag your feet, but also don’t let the process rush you into the wrong decision.  And, if you have multiple interesting offers, remember that there isn’t really a wrong decision.  

 

 

 

 

Would this Astrophysicist’s Resume Pass a Developer Job Screening?

imageedit_2_3636114582Programmers can come from anywhere, even a field that studies galaxies far, far away.  Felipe Gómez-Cortés is a physicist, currently writing a paper about Dark Matter Halos and Star Formation Rate at Redshift 6.  Felipe doesn’t have a CS degree and has never worked as a software engineer in the industry a day in his life. There was even a time when he found himself kicked out of college after academic probation.

On paper, he’s probably someone you wouldn’t trust with your industry code. Within 6 seconds of looking at his resume, you know most of his experience stems from academia. To most people, it’s not immediately clear how cosmology might relate to real-world software engineering. Consider the Facebook recruiter who plainly pointed to “relevant experience,” “company recognition” and “keyword research” as the top criteria when sifting through traditional resumes.

But if you dig deeper, some might call Felipe a computational genius. He was home schooled as a child in Bogota, Colombia, blasted through the average education and made it to the university at the age of 15. Hence, the academic probation was less about a lack of capabilities and more about discovering the world of college parties at a young age. Math and computing has always pulled him. As a kid, he taught himself to use Excel to graph some polynomial and trigonometric functions. Eventually, he earned his B.Sc at the National University of Colombia, and now has one semester left in his M.Sc working in computational astrophysics.

Even though Felipe is not your traditional software engineer, he has more than enough potential, intelligence and–most importantly–self-motivation to be an asset for the right engineering team.

Hiring managers often complain about technical talent shortage. Stats from the Bureau of Labor Statistics (BLS) tell us that 1.4 million positions will be open in computing with only 400,000 computer science grads in 4 years. This ran a nationwide alarm, where even the White House is rallying communities to start training Americans on the critical skill of coding. In fact, we partnered with the White House TechHire Initiative to host the inaugural TechHire CodeSprint (or online hackathon) this past weekend to give nontraditional software engineers a chance to be seen exclusively to employers around the country.

Felipe exemplifies the self-starting engineering candidate who happened to excel in academia with hopes of eventually moving into the industry. But the reality is he’s often missed by most employers’ resume screening process. There’s a common stereotype or misconception that academics may not adapt to the culture of the software industry. While it’s true that programming for research is widely different than deploying real-world code, should folks as ambitious and accomplished as Felipe be overlooked because of traditional filters? 

We sat down with him to learn more about his experience of being a gFelipe Resumereat coder without the traditional resume of a software engineer.

Tell us about your first tastes of coding. And how does physics relate to programming?

Well my first taste in computing was 6-7 years old, I had a game that let me draw on a screen. And I had to position an object on the X, Y axis and move the position. My parents are professors, so they encouraged me to learn things like this early on. At 13-years-old, I was finding real roots of equations.

I first started coding HTML on Microsoft Publisher. Later on in college, in my 5th semester at college, I took a course on “Programming and Numerical Methods,” where I learned to write code in C++.

I learned some methods as Runge-Kutta, Molecular Dynamics, which are actually critical to solving physical problems in mechanics, fluids, electrodynamics, quantum mechanics. During my 6th semester, I took a course on “Computing Tools,” where I learned about Monte Carlo, Finite Differences and Latice-Boltzmann. And during my 9th semester I learned about “Simulation and Numerical Methods.”

This reminds me of what LinkedIn’s data scientist David Hardkte told us, who was tasked with building a data science team at Bright.com. He said most recruiters are worried about titles, but programming is a scientific tool.

Yes, I agree. Most people think programming is only related to computer science, but really every scientific or even mathematical discipline benefits from knowledge of programming. I’m finding that there’s a lot of demand for physicists in software engineering.

By learning programming for physics, I didn’t learn particularly about CS algorithms, but I learned about math and numerical methods. With C++, you can program objects with mass. Physics is very similar in that you’re taking things that have mass, creating special classes called planets. Planets have mass, positions and speeds. If you know the mass of two planets, you can calculate the force between them. It’s very easy. If you know the force, you can calculate the acceleration. If you know the acceleration, you can change the velocity.

With this, we’re calculating the analytical response. Comparing the movement with the simulation. You can calculate the trajectory of potential dangers of planets close to the earth.

Even as undergrad student I have used programming to study the normal modes of a rectangular membrane, the orbit of horseshoe comets, the electric potential over the electrons in the atom, the airflow in smoke rings, and I’ve made a small traffic simulation studying flow and speed.

I’m picking up CS algorithms now by sites like HackerRank and other ways of self-studying.

That’s interesting. So, you’ve been dealing with lots of data?

My interest for data structures began when I started working in astrophysics computing.  My grandfather was an astronomer, so I’ve always been interested in astrophysics. The data in cosmology, computational cosmology, can tell the story of the universe in a very massive scale. Not just planets or milky way or local group of galaxy. But the story of the whole universe with many galaxies. What’s the structure of galaxies?

Astrophysicists have made simulations using Fortran and C++ in very big clusters.

Take a look at this quick clip on the Millennial Simulation. It’s a computer program that simulates the structure and the evolution of the universe produced 25 terabytes.

//gifs.com/embed/millenium-simulation-wpzpJg

Very interesting. So physicists have been solving the problem of Big Data for years, and now it’s trending in the industry recently. How applicable do you think academia is to innovative programming, like machine learning, to that of the industry?

I haven’t worked in the industry for me to be able to compare it definitively. But I have an example for the way the industry and academia can learn from each other. So, Facebook allows image processing and recognition, right? Physicists have been doing this for many decades by trying to classify the galaxies in categories. Trying to find special galaxies.

What Facebook is doing with image processing is really fascinating and difficult too. I want to learn more about Machine Learning. And I’m going to jump into the ML domain next on HackerRank to learn more about it. I’m really interested in learning how to process data in a very efficient way.

By the way, why did you drop out of college for a while?

I had a very low academic scores. I was 15 years old, and all my friends weren’t taking school very seriously at the time. And eventually my university professors said I can’t study there anymore. It was a very interesting semester. To make a living and fill up time, I taught English courses, I was a water, and I drove a public small car to earn money.

So, what fast forward to today, what has the job searching experience like for you?

Well, I think the it’s tricky because most job ads relevant to me are either for physicists, which almost always require a doctoral degree (which I don’t have). And I’m looking to work in the industry.

If you look at Google Careers or other job postings on company pages, they all want some specific language like CSS or HTML5 or PHP. Often times, I run into interesting jobs where I don’t have the exact match. They usually want a CS degree.

Some companies require me to solve a HackerRank challenge, and that’s how I discovered HackerRank’s community to practice computer science fundamentals like algorithms.

[Also see: “Don’t Hire by Keywords“]

How did you do on the coding challenges?

I got a perfect score on two out of three of the challenges within 90 minutes. The third one was a timing issue. And that was very nice for me because HackerRank platform has a code editor and manual entry and input. It has the secret input test – 10 or less.

Best of all though, discovering HackerRank has lead me to learn more about CS fundamentals and algorithms that I’ve never seen before. I see the problem, name of the theory and I go to WIKI for the first place to ask. And I can search on the internet on the material to learn. I come back to HR to finish the challenge. Learning about these theories.

Overall, the challenges are a good way to show my passion for solving challenges, which recruiters might not see from my resume immediately.

That’s awesome. Any luck with job prospects? What will you do now?

I did get one call back through LaunchPad (which uses HackerRank), but there were visa issues unfortunately. Right now, I think I want to take a break, but I’ll be sure to keep looking for great opportunities in the industry.

I’m thinking seriously about a job outside of academia. I wanted to do something different. All my life, I’ve been in academia. I want to do real work.

Any advice for other folks with unique backgrounds like yourself who want to get into programming?

If you enjoy learning, and you like to solve challenges, HackerRank is the perfect place to find challenges, new methods and solutions.

 

Start practicing on HackerRank

 

Girls Who Code: From the Crowded Streets of Dhaka to Seattle’s Tech Boom

Rizwana

Few eyebrows furrow faster than Rizwana Rizia’s when you ask her if she’s ever felt disadvantaged from being a woman in the male-dominated field of engineering.

“Why….?”

Rizwana is a software engineer who has not only overcome gender stereotypes but also beaten even bigger odds. 

She hails from Dhaka, the megacity in a tiny country of Bangladesh, where people walk shoulder-to-shoulder at any given street. With 7 million people squeezed into 125 square miles, it’s just about half the size of New York City with almost the same population. 

Needless to say, the competition for opportunity in Dhaka is ferocious. Rizwana has a couple role models in relatives who got admission into the country’s best public engineering school: Bangladesh University of Engineering and Technology (BUET). Some compare it to the MIT of America or IIT of India. This helped her set a tangible goal: She’d be an engineer, and BUET was the ticket.

dhaka2

Of the tens of thousands of applicants, just about 120 people are selected. The competition is particularly fierce because it’s one of the few opportunities that’s entirely government funded. Since her family didn’t have money for tuition, this was her opportunity…this is probably the only thing that’s ever intimidated her. But after years of meticulous studying, working hard, and staying focused, the acceptance letter arrived. Of the 120 students in her class, Rizwana was one of 20 women.

After that, everything changed.

Here’s what Rizwana had to say about her journey, starting from the crowded streets of Dakha, Bangladesh to working in Seattle’s booming startup scene as a software engineer at Amazon.

Rizwana, could you tell us what sparked your interest in software engineering?

I did my undergrad in computer science and engineering in Bangladesh because I’ve always been interested in engineering since my cousins did their degrees at BUET. And then applied to Marquette University in Milwaukee Wisconsin for my postgraduate degree. I got my Master’s and PhD from Milwaukee. So, I’ve always been in academia and research-related roles, researching improvements in healthcare through mobile technology.

But I got small doses of what it was like building actual software working as a web developer at an outsourcing company in my country before moving to the US. Then, during my postgraduate studies, I also had an opportunity to intern at Amazon.

I just knew I wanted to work with real-world engineering instead of academia, and so I started job searching just before May, when I was nearing graduation from my PhD.

What’s the tech scene like in Bangladesh, and what was it like being one of the only women in your engineering class?

I think the situation is definitely changing. When I first graduated from high school, it definitely used to be that everyone wants a spot in good jobs and there just aren’t enough jobs, not enough schools for education. It’s really tough to get a spot where the government pays of all of your tuition fees–and you don’t have to pay anything. It’s very competitive.

Now there’s definitely more of a technology scene there. It’s a mobile-first country and growing more digital. We might not have a lot of resources for education, but there’s a lot of great talent.

As far as being a woman, I really never thought about it. Yes, there were very few women in my class, but I never thought there’s any reason for me to not go into the software industry. I was never afraid. I never thought of myself as different.

Wow, that’s awesome. So you’ve beaten the odds quite a bit by getting into BUET. 

Yeah the only time I was really intimidated was when I had to get into BUET. That was the hardest thing. After that, I think the only other time I was nervous was figuring out how I was going to pass coding interviews. It’s a really hard process.

I mean, I don’t understand how an employer can really understand someone’s skills or potential in such a short amount of time. You might be nervous or you might make silly mistakes. Even if you prepare for a long time, the actual in-person interview can go poorly.

So, as graduation was approaching, how did job searching go for you?

Initially, I was only applying to companies that I knew about. Then I started looking at LinkedIn jobs and just reading through job descriptions. Nothing was really striking.

Then, I noticed that Gayle Laakmann McDowell posted on Facebook about HackerRank Jobs, so I decided to check it out. I thought I found some treasure. There were so many companies posting coding challenges. I wanted to solve them all!

So, I solved many of the coding challenges and two companies gave me a call. Within a week, I was moved forward to the on-site interview with Amazon. I ultimately chose Amazon because this is my first industry job in the US and I wanted to work at a place that I was familiar with.

I do think HackerRank Jobs is a great initiative. Rather than posting job descriptions like on LinkedIn, posting coding challenges is a great way to directly reach candidates who are looking for jobs.  There aren’t a lot of coding challenges posted right now, but I think more companies should come forward and add coding challenges to make it easier for engineering candidates.

So glad you were able to land the job at Amazon, congrats! Do you have any advice for other women who would love to be in your position?

First of all, I’ve never once thought that I couldn’t do something just because I’m a woman. 

Of course, there are some barriers. For example, women who become mothers and have other responsibilities that could hold them back. But that situation is changing. More and more men are stepping up to help with household. My husband plays a big role in helping out with raising our toddler son. It’s no longer the case that women have all of the responsibility.

My advice would be to stay fearless no matter what anyone says and seize the opportunities around you.

 

Find a great job like Rizwana:

Browse HackerRank Jobs.


Girls Who Code: How 30 Days of Code Helped One PhD Improve her Fundamentals & Ace Interviews

18cfc74

Like many software engineers, Riyanat ‘Ri’ Ola Shittu’s path to coding was far from linear.

Although she’s spent most of her life in the United Kingdom, she moved to Nigeria during her most formidable years of high school, where she saw a vastly different world.

But it wasn’t the education itself that was so different. There’s a massive wealth of knowledge and information in Nigeria, she says. The thing that’s different, though, is they didn’t have row after row of computers in a lab like they do in the UK. Although she knew some of the basic of  computing, she wasn’t exactly sure where the “on” button was on until she went back to the UK for college. There’s no shortage of knowledge in Nigeria, but there’s fewer opportunities to actually apply the knowledge in a practical way.

Upon entering college and university, she dove into computer science at the recommendation of a relative, not knowing what she was really getting into. Having never had access to so many resources, she studied hard and soaked up everything she could. Ri even scored a scholarship to do her PhD in information security, which was co-sponsored by British Telecomms.

Fast forward post graduation, as she started to apply to jobs, she realized that her fundamentals were weak. By the time you graduate, it’s hard to remember what you learned in one semester years ago. At various stages of interviews at Facebook, Yelp, JP Morgan, and Winton Capital, Ri struggled because she needed to exercise her fundamental algorithm and data structure muscles.

And that’s when she saw HackerRank’s 30 Days of Code. We sat down with her to see how it went for her:

 
Why did you decide to join 30 Days of Code?

30 days is short enough to commit to, but long enough to learn some cool things. It sounded like just the perfect exercise to improve my coding skills.

A part of me however was very reluctant of jumping into coding because of two things: Frustration and fear. I felt frustrated because I had spent four and a half years in academia finishing a PhD in information security only to discover that my coding skills were not up to scratch. I felt fearful of realising how bad my programming skills were, scared of competing in a live contest against really smart people and fear of not finishing the contest at all.

In early December, I started working my way through Gayle Laakmann McDowell’s Cracking the Coding Interview to start practicing. I was learning a lot so I decided to try 30 days of Code. I had nothing to lose.

What were your initial thoughts? How did you get motivation?

Day 1 was Print out Hello World. Really? I thought, this might not be so bad after all…

I was 5 days behind so I did some catching up. I continued by looking at the challenges for Day 2 and 3 which involved Data Types and some other fundamentals. These refreshers were great. After submitting quite a few answers to the coding challenges,  I visited the leaderboard to see where I ranked #10,028. Cringe.

Still, somehow I found some motivation by looking at a few more tutorials and exercises. I caught up to Day 5 – If-statements, Classes, Loops and more. Then, the curious part of me wanted to know where I ranked on the leaderboard, so I checked again…this time I ranked #1!

Screenshots were made for moments like these.

Screen Shot 2016-06-22 at 9.19.17 AM

I was feeling excited (and rather proud of myself), so I shared my happy moment on social media. Apart from excitement, I also wanted people to jump on the bandwagon. So far, this was fun…

I definitely think sharing my commitment to 30 Days of Code with my friends and family helped me hold myself accountable to finishing.

 

//platform.twitter.com/widgets.js

 

So, tell us about your biggest learnings. How important was this experience?

It was really important because practicing your fundamentals make you a better coder. The problems I enjoyed the most were those that involved data structures – from maps to lists to nodes and trees. It’s amazing how simple a problem can become when you use the right data structure! Also, Kathryn Hodges (@BlondieBytes) who did the tutorial videos is great at explaining complex concepts using examples you can relate to. My favourite? Learning how to put together your own custom exceptions. If you think there is no relationship between hot chocolate and exception handling you are wrong! Trust me, she’s good!

Did you participate in forums or work with other people? Or were you solo?

Participating in technical forums was great not only to find answers but also participate to help yourself and others. The challenge that I struggled with the most during 30 Days of Code was on Day 27 on a challenge that involved writing tests “Testing your Code.” Like many of the coders, I watched parts of the tutorial and jumped into the challenge without fully understanding the question.  

Hours later with lots of failed submissions, I finally took the time to patiently read and understanding the problem. After a few discussions on the forum and a lengthy explanation by a HackerRank team member, the question finally made sense. It was a simple question but one that involved attention to detail.  I had my code reviewed and I reviewed other coders’ code.

What was the biggest challenge?

Time can be a limiting factor for anyone. There’s always a reason not to sit down and practice. But having just one small challenge per day made it more doable. It’s hard to make time for learning new things when you are really occupied. I did 30 Days of Code while I was finishing my PhD and preparing to defend my PhD (VIVA). At various points I missed out on some days, but the cool thing with 30 Days of Code was that you had the opportunity to catch up as long as you did the catching up before the last day of the 30 period.

What do you want others to know about 30 Days of Code?

Coding challenges like this one isn’t about competition, it’s about learning: My initial fears were soon put at bay. I was learning new things and demystifying difficult concepts. In addition to 30 Days of Code, I was going through other programming text books and I gradually realised that my programming knowledge needed a lot of brushing up. And this isn’t a bad thing.

Did 30 Days of Code help you get a job? And any final advice?

Finishing is good, but starting is even better.

If you never start, you’ll never finish. It’s that simple. I started 30 Days of Code, reluctantly but eventually, I’m  glad I did. 30 Days of Code pushed me to solidify my fundamentals. A few weeks later,I landed an amazing job. I now work as a junior software engineer at the Financial Times.

Want to improve your fundamentals like Riyanat?

Start 30 Days of Code



Should Engineers Really be Judged by Their Resume Writing Skills?

Screen Shot 2016-05-25 at 8.11.44 AMMartin Harriman wanted to make his way back to the software industry after a decades-long break building hardware, so he did what most people do when they’re trying to change industries.

He carefully tailored his resume and cover letter to downplay his hardware experience andin turnemphasize his skills, knowledge and expertise in software. A quick CTRL-F command could tell you that he mentions the keyword “software” 17 times in his resume and “hardware” only six.

Technically, his resume should successfully pass through most companies’ applicant tracking systems and into the hands of software engineering managers. One problem though: The last time he was in the software game, the languages, tools and concepts that were considered “modern” included: LISP, Smalltalk, PHP, LALR, and AJAX. In fact, if you navigate to his LinkedIn profile, his most upvoted skill is Perl.


“It’s funny because I don’t even like Perl.”  Harriman.

Screen Shot 2016-05-25 at 8.19.31 AM

Of all the programming languages and tools that Harriman knows, LinkedIn’s handy skill endorsement section is far from an accurate representation of his actual skills.  Harriman can pick up today’s neatly packaged tools of Ruby on Rails or even newer languages like Objective-C in his sleep.

“I mean, after you learn a dozen or so languages, they’re all kind of very similar,” Harriman says.

After all, if he had the mental model, tenacity and problem-solving skills to be able to port the gcc backend to odd architectures, like the DEC PDP-10, today’s modern software development is not exactly rocket science.

But even if he makes it through the ATS system, regardless of how good he is at software engineering, the reality is there are blockades of biases all over this resume. When hiring managers have to go through stacks of resumes daily, it’s hard to move him onto the next step with a resume filled with:

    • Older technologies. The reality is that the evolving state of software development makes it really hard for people to trust folks with older technologies on their resume even if they’ve had decades of past experience in software. Will he be able to catch onto newer stacks? Can’t leave this to chance.

    • ‘Hardware’ is a red flag.’ It’s fairly clear cut. Engineering managers think hardware is generally removed from software development. Harriman describes the general sentiment as:  

      “He’s a hardware guy, why are we wasting our time?”

    • Potential age discrimination. It’s hard to talk about, but age discrimination in Silicon Valley and tech in general is rampant. After all, the Harvard Business Review reports that the average age of Silicon Valley founders is just over 31. Given that Harriman has experience dating back to the 70s, this could potentially trigger an unconscious bias.

Despite his best efforts of resume tweaking, the traditional, resume-driven screening and hiring process by and large works against him. He got a few call backs, but not nearly as many as highly sought after engineers today. Such traditional processes lock massive pools of talent, like Harriman, out of the running.

So, what happens when you stop depending on resumes to screen candidates? Resumes are ingrained so deeply into our hiring culture that it’s hard to imagine the tangible benefits that might come from replacing resumes with something more practical, like a coding challenge.

Pure Storage is one such company that has always aimed at being as objective in everything they do, including their hiring techniques. So, instead of relying heavily on the subjectivity of resumes, the team has always asked candidates to solve a coding challenge—or what they call a “quiz.” It’s a completely blind way to gauge the skills of anyone, no matter what background or universities they have on their resume.

Harriman applied to Pure Storage, aced its coding quiz, and he’s been an integral component of team for almost four years. It turns out, contrary to what most engineering managers think when they see a hardware resume, hardware experience helps you become a better software engineer. We sat down with Harriman to learn more about his experience and how he ended up earning a coveted job as as a software engineer at Pure Storage with odds stacked against him:



Martin, could you tell us a little about when you first started coding?

I started out in software when I was in grade school because my father was in programming. My first computer-related jobs were in software. I worked in computer software roughly from the mid-70’s to mid-90’s.

Wow, you’ve really seen the boom in software from the beginning. Why did you make the switch from software engineering to hardware in the ‘90s?

I switched to hardware because I was working with a lot of hardware engineers and it was fun stuff.  I literally got a 5-min course on doing chip design and switched right into it. When it comes to doing chip design, it’s basically like writing software in a really bad programming languages.

Wait, you said literally a 5-min crash course on chip design? What do you mean by that?

There was more of a demand for hardware designers at the company I was working at (Silicon Engineering in Scotts Valley). All they had to teach me were the particular constraints in the programming language that you need to follow to compile into a chip. It’s pretty rudimentary stuff. The company that makes the compiler actually publishes a fairly thin volume on writing Verilog for synthesis. I got a 5-minute condensed version. I knew how hardware worked. I knew what design was and given that background, and knowing what a For Loop is, the rest was really trivial.

That’s awesome. So do you think your hardware experience helped you become a better software engineer, looking back?

From an engineer’s point of view, the actual work is kind of similar. What you end up with at the end of the day is a physical object that embodies what you do. That’s satisfying…it’s fun. You just made something that you can’t change. It has to survive for a couple of years for it to be worth it.

No pressure? 🙂

Well, there’s pressure in all of these jobs, even here at Pure Storage. It would be very significant if we created software that corrupted a company’s data. It’s a different mindset on the nature of the testing you need to avoid the disaster…the exact consequences of the disaster. It helps you prevent shipping sloppy work. Because in hardware design, the world is much more test-driven than the software world. The consequences of missed bugs is much higher. It helps in taking the testing side of things seriously.

So, how was your job search overall when you decided to go back to software?

I applied to Pure Storage because I think it’s a great company overall, and had heard really great things. They sent me a coding challenge, first and foremost, and they didn’t really look too closely at my resume.

I heard that you got a perfect score on that test. Did you prepare?

I did not prepare for it at all. I thought, great, I’ve been doing this for many years and I should be able to do this, let’s see what happens. I got a perfect score and I got the fastest time they ever had it.

Wow, why do you think you scored well? What was the quiz?

It’s a lot to do with having a lot of experience in both software and hardware. They did a good job of testing things that are more than just rote knowledge. Things that are fundamental of how computers work and how you think about programming languages.

There’s one question that we got the most heat on, but it was the most predictive of how people would do in the rest of our interview process. It had to do with the binary representation of a fractional number. It’s one of those things where it’s not something you think about everyday in your job. But if you know how binary computers work, you can answer the question instantly. That correlated very well for people’s ability to come into the interview process and produce code for us and talk about their process.

Also read: Why Should Senior Engineers Balance Trees in an Interview?

Do you think these are good questions for screening candidates?

We got a lot of heat from unsuccessful candidates, of course, in the grounds that this is silly because they don’t need to know this to do their job. And they have a point. I guarantee that nobody at Pure needs to know what an IEEE floating-point number looks like, for instance. It’s not something I think of day to day in my work. But it’s one of those things that it’s part of knowing how a computer works. Having that kind of mental model is important on producing code.

Would you have gotten this job if Pure Storage used the same resume process as everyone?

The embarrassing part of that for me is that, I carefully crafted my resume for Pure to emphasize the software experience that we had. They would read that resume and said ‘Oh he’s a hardware engineer, I don’t know why we’re bothering.’ That shows my resume writing skills, glad you’re not hiring me for that.

In fact, many of the most talented engineers at Pure are from interesting backgrounds that go against the grain of what most hiring managers look for in a resume. People come from a diverse set of backgrounds, whether it be their technical background or the university from which they graduated.

Pure Storage now scales the early quiz model by using automated coding challenges. It’s the same idea of asking candidates to solve problems in lieu of sending their resume, except now they can do so for thousands of candidates at once.

So, what kind of cool stuff are you doing now for Pure?

The most recent achievement was a team effort. I’m part of a team that works on space accounting, calculating the amount of space in use. It’s a surprising difficult problem at scale because the internal metadata is optimized for things like read and write performance and as a result almost pessimistic for the task of figuring out what space is in use and by what entity. So, we’ve had a couple of iterations of this over the last three years, and we’re very happy with the most recent one because it’s basically eliminated a significant portion of customer problem calls. It used to be a regular feature for our support organization.

Interesting. And do you think Pure had any problems or skepticism hiring you since you came from hardware?

I’m sure they did, they didn’t explicitly say that to me. Not everyone makes the transition. The good news is that once you have the job, and once you make the transition, you can show them what you can do. That’s the fun part.

That’s awesome. If there’s someone out there who doesn’t have software experience, like yourself, but wants to make the switch, what advice would you give?

Go find a job, which will be hard because people won’t want to listen to you. Try to find a job that’s actually a software engineering job, not just close to the software engineers. If you don’t get the software work you want, then keep looking. As long as you’re sharpening your skills overall, there’s no reason why you can’t prove your coding skills, especially when more and more employers are seeing the value of innovating their hiring process to find software engineers from different backgrounds, even hardware.

 

Enjoy this post? Please subscribe to the HackerRank Blog.

 

Girls Who Code: 3 Teen Sisters Crush Coding Records, Stereotypes

Chances are, 11-year-old programmer Mari Machaidze is growing up in a pretty different world than you and me. It might even be a better world, ingrained with the idea that programming is just another skill to be mastered through persistence with or without a Y chromosome.

If you were to tell Mari that girls don’t look like engineers, women can’t code as well as men, or women aren’t as competitive as men, she’d raise a skeptical eyebrow.

Mari can instinctively point to not one, but two sisters who would prove you wrong. Eighteen-year-old Elene Machaidze and her sixteen-year-old sister, Ani, routinely participate in coding competitions where they outperform thousands of men. Their home is decorated with medals from prestigious programming tournaments, like the International Olympiads in Informatics (IOI).

medals

The three sisters live in Georgia, a European country with a population equal to just 11% of the state of California. They’ve gained quite a bit of local fame for coding circles around their opponents. They’re born into a household that’s worked hard to fabricate a more equal world, with supportive parents, teachers and mentors who instilled confidence in them at an early age.

Thanks to her eldest sister, Elene, who first lit up the path to programming, Mari and Ani have a strong, successful role model and mentor to guide them through the male-dominated field.

We sat down with Elene to learn more about their story and how they achieved so much at such a young age.

So how long have you all been coding?

Mari just started learning programming last year. Ani has been coding for four or five years now, and I started coding when I was in sixth grade. I joined a programming club called Mzuiri. I just graduated from Komarovi school, which focuses on math, physics and computer science. Ani is going there now, and Mari will go there next year.

What drew you all to coding?

Our parents actually went to Komarovi school too. My dad is a programmer, and he works at a bank as a security analyst. We were exposed to math and computer science at a very early age, and we all love coding and participating in contests just for fun. I do want to major in computer science, and eventually work as a programmer like my dad.  

Tbilisi,_Georgia_—_View_of_Tbilisi

How many programming contests have you competed in? And how many medals have you won?

I’ve participated in tons of contests and olympiads. But the most significant ones were:

  • IOI
  • CEOI
  • IZhO
  • GeOI
  • Google Code Jam
  • HackerRank Women’s Cup
  • Facebook Hacker Cup
  • USACO
  • COCI

There were more too. I’ve won 2 bronze medals at IOI, 1 bronze at CEOI, 2 silvers at IZhO. Mari, Ani and I competed in HackerRank Women’s Cup as a team last year, and we ranked third place! Some companies that sponsored the event even sent us a letter after the contest, but I had to tell them that we’re too young right now to work for them.

hackerrank

I might call them when I’m a student or graduated. I’m applying to colleges. I took a gap year after high school, and I was actually teaching programming to 7th to 9th graders. I often point my students to HackerRank challenges to learn how to code. It’s a great tool to supplement learning in a very hands-on way. I love how the problems are arranged on the platform. I’ve been using it for years, back when it was first called Interview Street.

Wow, that’s incredible. You’re getting job opportunities before college! And even 11-year-old Mari joined the contest?

Yeah, Women’s Cup was one of her first contests.

We all worked together as a team. I did most of the coding, but Mari and Ani helped me think through the problems.

It was a lot of fun, and we were really surprised we won 3rd place. It was an awesome feeling.

How many programming languages do you know? What is your specialty?

It’s funny, I actually started coding in Pascal in 6th grade. It’s such a useless language today, but that’s how I started. Then, I learned C++ and I’ve been coding in C++ ever since. More recently, I’ve been learning Python as well.

Do you ever feel like you’re treated differently in forums, discussions or by men in general? Do you feel like you have to prove yourself more so?

Some boys definitely think that they’re better than me just because I’m a girl. I might have felt bad about that years ago, but I don’t feel that way today. I’ve participated in many olympiads and competitions.

And even though there are many more boys than girls, I was one of the first few girls on the Georgian team in IOI and I was the second Georgian girl to win a medal.

The boys don’t say anything anymore. Generally, women are strong and I think more women should code.

Yes, we agree. And how do your sisters feel being one of the few female programmers? What advice do you give other girls who want to be great at solving coding challenges like you?

For coding challenges, like the upcoming Women’s CodeSprint, remember that if you get stuck, try to think outside of the box. I like to remember the 9 dots puzzle because it’s a great example of thinking differently.

For those of you who aren’t familiar, the 9 dot puzzle requires you to connect 9 dots by drawing four straight, continuous lines that pass through each of the 9 dots without lifting your pen. Most people think to connect the boundaries, which makes the puzzle seemingly impossible. The only way you can solve this is by drawing the lines outside of the square. Hence, thinking outside of the box.

Anyone can code well if they work hard and are willing to open their minds to solving problems differently.

the wild (1)As for my sisters, if a guy says girls can’t code as well as guys, then my sisters just say “well, my sister wins competitions.” Anytime anyone says you can’t code, it’s all the more reason to roll up your sleeves and work hard. Remember, if you work hard, you can achieve anything and prove them all wrong.

Want to practice and show off your coding skills like Elene?

Join thousands of women worldwide to participate in Women’s CodeSprint April 22nd, 2016.

For Anyone Who Has Been Turned Down by 38 Companies, 120 Interviews

Alibek Datbayev’s journey to helping build the future of travel at Booking.com


cutmypic
Nearly 38 rejections in the span of 2-3 months sounds rueful to the average person. But for great software engineers, such resilience is a common trait. All too often, great software engineers pass through traditional resume screenings and freeze during the whiteboard coding interview.

If you think about it, coding on-the-spot in front of 3-5 different people multiple times isn’t a great reflection of your coding skills. You don’t get to use to your own IDE, you have an absurdly limited amount of time and you’re in an incredibly high-pressure environment.  

Job interviews are inherently difficult. But for Alibek Datbayev, landing a new job proved to be a test of a whole new level of willpower. Not only did he interview at about 40 companies, each of those companies had 2-4 rounds of interviews.

In about two months, he calculated a total of 120 rounds of interviews, resulting in 10 final rounds and 2 offers.

Here’s the thingDatbayev is an exceptional coder. He’s not only built geo apps, online ticket booking systems and an online ecommerce store from scratch, but also worked on cutting-edge new tools like back-end reward points systems and developed the largest blogging platform in Central Asia. But, like many coders, crushing job interviews just wasn’t one of his strong suits. Job interviews are difficult by design.

We sat down with Datbayev to learn more about his journey navigating through over 100 job interviews, and finally achieving a highly coveted opportunity of helping to build the future of travel at Booking.com.

So, how did you get to where you are today?

I’ve always been passionate about coding, starting from my early days at Olympiad teams in high school and ACM teams in college. This involvement, and consistent practicing, has really helped me master my technical skills.

I’m originally from Kazakhstan, where the tech scene is burgeoning, but it’s of course unparalleled to Silicon Valley. I’ve always dreamed of going abroad to other tech hubs and build cool technology. I had the opportunity to do that in 2014 when I was referred to Ipsy, the beauty product retailer, helped me get a job in San Mateo. But after my Visa expired, I had to return to Kazakhstan for a couple months to find another job. That’s when I interviewed with about 40 companies.

Wow, you interviewed at 40 different companies. What was going through your head as you went through so many job interviews?

I mean, of course it’s tough. There were several reasons why the job opportunities weren’t working out. But I know that I’m confident in my skills. It was just a matter of time. Many of the companies I was interviewing at were just not the right fit. For other opportunities, I simply didn’t do well enough in the difficult coding challenges. Many other companies didn’t want to hire me unless they met me in person. This was difficult because I was in Kazakhstan, and there was a 9-12 hour time difference. I would often do coding interviews at like 1 AM or 2 AM.

For instance, I got into the final interview for an extremely high-growth human resources startup. That was exciting, and

I really thought I was going to get an offer. But, eventually, the last round of the interview was super hard. I just failed.

But I just kept going because I knew it would happen eventually. I have the right skills, but it’s hard for companies to see that easily in the way most coding interviews are set up.

amsterdam

 

And how did you succeed and land a job at Booking.com’s engineering team?

Booking.com was hosting an online coding competition through HackerRank in September 2015, and I entered the contest. This changed my life.

I wouldn’t be here in the beautiful city of Amsterdam, where Booking.com HQ is based, if it wasn’t for this CodeSprint, or online hackathon.

I actually didn’t particularly score very high on those challenges (editor’s note: his rank was 305/435), but since I opted into the job opportunity after successfully passing the phone screen technical interview, the recruiters and engineers invited me for an onsite interview and they liked the way that I approached the problems.

This interview process was great because I was able to get my foot in the door by in just a day, in my own computer from my own home.

Booking’s culture is all about opening doors to the best talent internationally. So, after a couple more interviews that focused on culture fit, they decided to relocate me, which was incredibly helpful. So, I just started working on the engineering team at the headquarters about two months ago. I’ve been loving it so far. I’m really happy I participated in Booking’s online hackathon, and I’m grateful for that opportunity!

Any advice for other people who are struggling to succeed at coding interviews?

Even though algorithmic challenges aren’t really used on the job much in production, it’s still really important to keep revisiting your fundamentals. It’s just like a muscle–if you don’t train it, it’ll become weak. Keep practicing code challenges, and don’t give up. If you fail 10 interviews in a row, go for the 11th interview. But take a look at all the variables, and see if there’s anything you can do differently to improve. Take the pressure off, and work through problems routinely to keep your muscle memory in shape.

At some point, I mastered my skills, and practicing code challenges helped me fill in spaces in my knowledge.

Want to practice your coding skills? Join 30 Days of Code

Girls Who Code: Airbnb Revenue Analyst to Software Engineer in 1 Year

Many of you have it. That dormant bug that’s hungry for hacking. Even if you don’t professionally pursue it, the spirit of engineering is often ingrained deep in the crevices of our brains.  Common triggers include things that are abysmally clunky, slow and annoying. You’re perpetually compelled to hack together better solutions for the daily details of life.

The world of finance is filled with triggers for hackers. Massive volumes of financial data are often too heavy for the shoulders of Excel VBA or Pivot Tables. It could mean waiting hours just to load a spreadsheet.

And it’s never too late to awaken the inner hacker.

This was the case for Kari Tarr. She was working as a revenue analyst for Airbnb when her itch to hack transformed into urgency to become an engineer. It’s understandable. If you think about it, she was working on analyzing revenue for one of the most high-growth startups of all time. Airbnb earned about $250 million in 2013, and tripled to $850 million this year. Her work involved analyzing massive spreadsheets, a daily arduous and time-consuming battle.

After being exposed to the true power of programming, Tarr made it her mission to achieve what many inner hackers often dream about.  She switched from the finance team to the engineering team in 1 year.

How did she achieve this herculean transformation? We sat down with Tarr to get inside her head on how she–and you–can feasibly change an entire career trajectory by indulging the inner hacker.

So, first off, what was your first entry into programming?

You know the scene in the movie Clueless where she has that dream closet? And she can see all of her outfits on the computer screen? I really wanted that and my dad was a software engineer at the time, so I asked him to make it for me. He said he wouldn’t do it for me but he’d help me learn to do it myself. So, I got into very simple front-end HTML. Again, this is in the 90s, so simple HTML sites were all the rage.

That’s awesome. The Clueless Closet is apparently real by the way. So, if you’ve always been interested in programming, why didn’t you study CS?

As a kid, I was a geek but definitely not thought of myself as a programmer. Especially because my dad was a very typical engineer—very quiet and reserved. And I was very outgoing. I made these associations in my mind that I wasn’t supposed to be an engineer.

I thought about majoring in CS, but I took an AP Calculus class that absolutely destroyed me. I was around people who were very nerdy and mostly guys. It felt intimidating – so I went the business school route instead.

So, practically speaking, how did you start coding?

I think if you’re an engineer at heart, you’ll always gravitate toward it and eventually find your way there. I was always looking for ways to be more technical in my roles. I had a habit of inventing new job descriptions that let me do more and more technical things, Excel macros and VBA being the gateway then teaching myself SQL.

At Airbnb, I became friends with the engineers. Being a startup, we’re dealing with tremendous growth and often have to go way outside of our roles and hack together solutions quickly, building the road as you’re driving on it, so to speak. To get one of my projects done and out the door, I had to learn a little bit of Linux, and I was immediately hooked. I think I kind of felt drunk with power and became obsessed with learning as much as I could. I became a part-time self-taught person at that point.

What kind of project was it?

I was dealing with lots and lots of data, and I started learning how to edit files through the command line instead of opening an Excel spreadsheet.

I was basically doing things like changing files from tab to comma delimited, so I could import them into another program. It was taking me seconds to do something that took hours in Excel. I was really excited and  wanted to see what else I could do.

But how did you convince Airbnb engineers to give you access to the code base?

Two things: first, it was looking for the right opportunities. If something needed to be automated, or there was a weird bug that the engineering team didn’t have the bandwidth for, I’d dig into it. I sought out opportunities that would force me to get experienced with our code base.

Second, I tried to make it really hard for them to say no. For example, I wanted to build a tool for my team so I reverse engineered some existing code and got something up and running. Granted, it was pretty terrible code as I had no experience in writing “good” code, but I got it working.I had a prototype and I showed it to one of the engineering managers and said “hey, I want my team to be able to use this. It’s already working. I did all the work. Can you help me ship it?” It’s hard to say no to that.

Plus, the team at Airbnb is incredibly supportive. I had some awesome mentors who also were wonderful at helping me navigate things and get me unstuck.

And how did the engineering manager react when you first pitched the idea of switching to their department?

At first, they were against the idea. It’s risky to take someone on who doesn’t have experience. They were worried that they’d end up spending too much getting me up to speed. So, I figured okay I’ll keep learning on the side and formally apply in the next 3-5 years when I’m ready. I’m not sure why I wasn’t more discouraged. I guess I kind of expected it. I know the caliber of people who work here and I felt like I had a long way to go before I’d be able to compete.

But then I got some good advice from a friend who told me if I really wanted to learn this stuff, I needed to be living and breathing it every day and I should just jump off into the deep end. So the scariest thing I could think of was to ask them to give me a chance to prove myself.

The best managers help you figure out where you want to go and give you the steps to get there. Once I adamantly said “This is where I want to go” they set up a path for me to get there.

Now that you’ve successfully become a software engineer in 1 year, in hindsight, what are the best tools for self-learning?

I think the best thing to do would be just getting your hands dirty as quickly as possible. I started by reading books, but it left me with so many questions. You have to see things in action early and often.

The thing I really struggled with the most was wanting to deeply understand everything the first time I dug into it. With programming, it doesn’t always work like that. You might have to see or hear it in 6 different contexts before it clicks. That’s why it’s helpful to do a combination of:

  • Reading lots of books
  • Getting a mentor
  • Going to meetups, surround yourself with people doing what you’re doing
  • Working through coding problems

Eventually if you keep at it, things start coming together. One thing that particularly helped me get over that hurdle was pair coding with friends. Gayle Laakmann McDowell is a good friend of mine who helped me through a lot of the coding interview problems. She and I would hop on HackerRank and work through algorithms. It was a beautiful way to learn because she could literally see where I was having trouble. If she could tell I wasn’t solid on something, she’d make up smaller sub problems. Eventually, 36 mini problems later, I’d solved some matrix iterative algorithm. It was slow, but it got me from point A to point B and it was really encouraging.

Now I’ve been working as a full time software engineer for about 6 months I’ll admit, the learning curves never stop. Once you get over one and think you’re in the clear, there’s another ahead that makes you feel like a beginner all over again. If you’re a life-long learner, you’ll love it, because you’ve really got no choice. It’s been a roller coaster but I’ve shipped some awesome projects and I wake up every day really excited to get to build stuff for a living.  

____________________________________________________________

 

Are you ready to become a coder? The hardest part is starting. Join the 30 Days of Coding challenge for coding newbies.