Triplebyte Blog

We help engineers join great companies
Try our coding quiz

Share this article

How Triplebyte Made Me More Confident as a Self-Taught Programmer

By Charles Treichler (Interviewer) on Feb 28, 2019

How Triplebyte Made Me More Confident as a Self-Taught Programmer

[Triplebyte's process] seemed too good to be true, and I wondered where the catch was. But after some thought, I could see how it made sense. Companies are looking for people with skills and aren't necessarily looking as much at credentials, especially in Silicon Valley. I was really apprehensive about whether I'd actually get any interviews with companies. And then, even if I got interviews, if I would get any offers. It hadn't even crossed my mind that I would have to choose between offers. But I got three offers, and that was a really cool experience.

"It's really helping me to see how I can accomplish the things that I want to do. At some point I think I want to be working with hardware more. And I'm getting to work on that stuff today, which is just blowing my mind.

- Isaac Parker


Originally from Salt Lake City, Isaac Parker now works as a software engineer for Opendoor in San Francisco. But before being hired by the real-estate unicorn in 2018, Isaac worked a retail job to pay for community college classes, and struggled to apply for any tech jobs he could find. It wasn't that Isaac didn't have the right skillset (he had been programming since childhood). But without a CS degree, he had no way of proving his abilities to companies—and he wasn't always sure of them himself.

Like many self-taught programmers, Isaac wondered how he would stack up against traditional CS grads, and if he could hack production programing. But then Isaac discovered Triplebyte. He passed our technical screen and received three job offers, including one from Opendoor. Isaac says Triplebyte's background-blind process not only got him a job he loves (working along-side and learning from world-class developers), but also gave him confidence in his own abilities, and a new sense for what his skills are worth.

Note: this interview has been edited for length and clarity.

Learning to Program—Without College

How did you get started programming?
My dad has a Master's Degree in computer science (he designs medical software), so there were always computers lying around the house. And not your standard computers—computers running Linux, that sort of thing. It always fascinated me. I've always liked building things, and programming was like my unlimited set of Lego blocks. I was probably around 12 when I started writing HTML, CSS, and JavaScript. And from there, I always wanted to learn more languages.

Was there a specific moment that sparked your interest?
My dad had bought some web domains, back when that was a cool new thing to do. And on all of our computers the browsers always opened up to this website he had written (back when you set a homepage). Growing up, I always thought that everybody had that kind of thing. Turns out, most people just opened to msn.com or something like that.

I got to the point where I had read the HTML and the CSS, and had figured out, Okay, I think this might do this, and I started playing around in Notepad, making my own versions. Eventually, my dad set it up so I could start editing those other pages. He set me up with a playground where I could just start playing with HTML and CSS, and then PHP. Probably one of the best things he taught me was how to learn things myself.

I don't know if I can say exactly what the drive was, beyond just really enjoying editing code and seeing it work. That cycle of writing in a language and then seeing the computer do exactly what you wanted it to do. It was just like building some Lego contraption and having it actually pick up a ball or climb over an obstacle.

How did your interest in programming develop over time?
Programming was a hobby, almost an obsession. I wanted to learn more things, and I wanted to learn how to do them the right way. That was always one of my big drives: How do companies do it? Often I had to say, Okay, I know that this may not be the optimal solution, but I am going to learn a lot from it, and it's really interesting, and it's going to get the job done. And it is going to help me understand and appreciate the shortcomings of this solution for the next iteration.

Did you go to college for CS after high school?
I did terribly in high school because I was spending most of my time programming, in class and out of class. It probably wasn't great, but I learned a lot. At one point I was fascinated by Android phones, especially rooting them. So I wrote an app that helped you figure out their status, if you were actually rooted. All throughout high school, I remember spending a lot of time writing PHP with MySQL, trying to build things.

Out of high school, I worked on a lot of websites, and had a retail job. Two years after high school, I started going to community college and stayed for a few semesters. The last semester, I took the intro to programming class, the only CS class I ever took.

Why did you decide not to go to college for CS?
I should have, I guess, but I went to community college because I was paying for it myself. I was also worried that I would get frustrated because I already knew a lot and might lose interest in it. Then again, I had no idea what portion of it I would already know. I guess it was just bad planning on my part.

The irony is that I did really well my last semester at community college. And I had done pretty well the semester before. I actually was doing really well, and I was finding ways to pay for it, like contracting, with one-off things. So I had kind of figured it out, at about the same time that the whole Triplebyte stuff started.

Without a CS degree, how did you teach yourself to program?
It might be most accurate to say that I learned by brute force. I always just had a million things that I wanted to build. So I started from there, asking, Okay, what technology should I use? And then I'd be like, Okay, how do I make this thing do what I want it to? How do I connect PHP to a database? How does it do that? It was just by brute force really, and asking a lot of questions. Almost like script kitting at the beginning. Just downloading somebody's code and naively trusting that it would be good.

I remember once I had taken a wheelchair and hooked up relays to the motors because I wanted to be able to control it with my phone. And I remember taking a long time to read this TCP chat server somebody had written in Java, and then raiding the code for days. Wrecking this code, trying to figure out by trial and error what parts were actually doing the communication between the client and the server. A lot of my learning was that style, just patching knowledge together, including previous projects I had done.

Did you know you wanted to be a professional programmer?
I think for a long time I wanted to work at a company and do software development in a professional setting. But that was a really big stressor for me, because I've never really known how much I know. I assume that if I had gone to college and gotten a computer science degree, I'd know that I know about as much as the other people who also went through the course. And if I looked on LinkedIn and saw what jobs they were getting, I would know, Okay, that's about what I should aim for. I know about where I am. That was a huge barrier before when I was applying for jobs on my own, not knowing what my skill level was. I never knew how to present myself. I knew I wanted to write software in a professional setting, but I just didn't know how to get to that point.

Applying for Jobs Before Triplebyte

What was your experience like applying for jobs before Triplebyte?
It was really painful. Again, it was hard to know what things somebody was looking for, and what things I knew. On the scale of, I couldn't write, 'Hello, World,' to, I'm an expert in this language, where do I fall? That middle area is so expansive. For any given language, or any given technology, I could say, I've written my own stuff, and it doesn't crash very much, so I guess I'm good? But I didn't have a good sense for what companies were looking for, or how to interview well, or how to write a good resume. All the other skills that are essential for getting a job. I want to say the common sense things, but some of those things are kind of the opposite of common sense.

Was the fact that you didn't have a CS degree a big hindrance for you?
Yeah, I knew that if I had a college degree, I would likely have been able to get a lot more interviews—any interviews—more easily.

Getting Multiple Job Offers Through Triplebyte

How did you hear about Triplebyte?
I think I was just writing something for a Django project, and I was on Read the Docs and saw an ad. Something like, Take our coding challenge, and I was like, Oh, this'll be fun. Let's see what happens.

I took the quiz, and I was impressed by the quality of the questions. I guess I was expecting a Facebook quiz style where the person writing it just barely understands what they are writing. But this was like, Oh, okay, these are tricky questions. I've wondered the same thing. After I took it, it said, Well done! You've done extremely well, you can schedule an interview. And I was like, Oh, that's more real-life than I was expecting. I scheduled the interview for the next day, or the day after.

What was using Triplebyte like?
I hadn't really realized this until now, but it's similar to what I hear people saying about Opendoor. It seemed too good to be true, and I wondered where the catch was. But after some thought, I could see how it made sense. Companies are looking for people with skills and aren't necessarily looking as much at credentials, especially in Silicon Valley.

I was really apprehensive about whether I'd actually get any interviews with companies. And then, even if I got interviews, if I would get any offers. It hadn't even crossed my mind that I would have to choose between offers. But I got three offers, and that was a really cool experience.

What has your new job at Opendoor meant for you personally?
It's been really big. I moved out here from Salt Lake City. I am learning a lot of really great new things, making new connections, and working on solving problems that I'm really, really interested in. It's really helping me to see how I can accomplish the things that I want to do. At some point I think I want to be working with hardware more. And I'm getting to work on that stuff today, which is just blowing my mind.

And now I know, Okay, [the things I want to accomplish] could actually be within grasp, whereas before that was just a total moonshoot. Now, it feels reasonable if I decide that I want to pursue that path.

Do you feel like you have a better sense of your skillset now?
I feel like I have a 75% better understanding of where I am. I still have a lot to learn, especially about SQL. I kind of suck at SQL. But starting at Opendoor over these past few months...I wouldn't say that it's been the end of the journey...I finally have the chance to see a lot of things in action that I've wondered about and have a lot of my questions answered. But it's also sparking even more questions.

Programming is interesting, and it's fun, but it can also be really frustrating. And there can be so much uncertainty about how to do something. There are so many different ways of solving something. You can write a webpage in Perl, or PHP, or in Python. If you're doing some of the old-school stuff, you can write the thing in C# or Java. A lot of programmers don't like PHP, But why is PHP still around? Why is it still useful? What is it still used for?

Being at Opendoor has been really good. I've learned so many things that I've always been curious about.

Here is a final philosophical question: Why isn't everyone happy all the time?
I mean, there's always that one quote. What is it? You have to have stormy days to appreciate the sunny ones? Something to that effect. If you're expecting there to be a flow to things, then I guess it would make sense to have stormy days, so that you could actually appreciate the sunny ones.

Isaac, thanks so much for your time!!!

Get offers from top tech companies

Take our coding quiz

Liked what you read? Here are some of our other popular posts…

How to Interview Engineers

By Ammon Bartram on Jun 26, 2017

We do a lot of interviewing at Triplebyte. Indeed, over the last 2 years, I've interviewed just over 900 engineers. Whether this was a good use of my time can be debated! (I sometimes wake up in a cold sweat and doubt it.) But regardless, our goal is to improve how engineers are hired. To that end, we run background-blind interviews, looking at coding skills, not credentials or resumes. After an engineer passes our process, they go straight to the final interview at companies we work with (including Apple, Facebook, Dropbox and Stripe). We interview engineers without knowing their backgrounds, and then get to see how they do across multiple top tech companies. This gives us, I think, some of the best available data on interviewing.

Read More

Bootcamps vs. College

By Ammon Bartram on May 19, 2016

Programming bootcamps seem to make an impossible claim. Instead of spending four years in university, they say, you can learn how to be a software engineer in a three month program. On the face of it, this sounds more like an ad for Trump University than a plausible educational model.

But this is not what we’ve found at Triplebyte. We do interviews with engineers, and match them with startups where they’ll be a good fit. Companies vary widely in what skills they look for, and by mapping these differences, we’re able to help engineers pass more interviews and find jobs they would not have found on their own. Over the last year, we’ve worked with about 100 bootcamp grads, and many have gone on to get jobs at great companies. We do our interviews blind, without knowing a candidate's background, and we regularly get through an interview and give a candidate very positive scores, only to be surprised at the end when we learn that the candidate has only been programming for 6 months.

Read More

How to pass a programming interview

By Ammon Bartram on Mar 8, 2016

Being a good programmer has a surprisingly small role in passing programming interviews. To be a productive programmer, you need to be able to solve large, sprawling problems over weeks and months. Each question in an interview, in contrast, lasts less than one hour. To do well in an interview, then, you need to be able to solve small problems quickly, under duress, while explaining your thoughts clearly. This is a different skill. On top of this, interviewers are often poorly trained and inattentive (they would rather be programming), and ask questions far removed from actual work. They bring bias, pattern matching, and a lack of standardization.

Read More
Get the Triplebyte newsletter Subscribe

Get the Triplebyte newsletter

Be the first to get the latest Triplebyte content straight to your inbox.