Robby and Sierra spent three weeks working on their final project called Book Kit, an application to share and save online resources. But even though they worked closely together every day, they were actually in separate cities! That’s because Robby and Sierra were students in Thinkful’s Web Development Career Path, a full-time online coding bootcamp. We touch base to learn why they each chose to study online with Thinkful, how they collaborated remotely, and how Thinkful is guiding their job search. Plus, Sierra and Robby give us a demo of Book Kit!
I'm sure you both had a life before Thinkful – Sierra, what were you up to before the Web Development Career Path?
Sierra: Before I joined the Thinkful program, I was getting a master's degree in Library and Information Science from the University of Illinois Urbana-Champaign. I've always believed that people have a right to access information in the format that they prefer, and I thought the best way to achieve that was to become a librarian.
I still admire librarians, but after the master's degree, I think my skills are more suited towards web development and making apps more accessible to people with disabilities. Our final project, Book Kit, is definitely an extension of that; it allows you to access bookmarks more conveniently.
Were there computer science requirements in that Information Sciences master’s degree?
Sierra: I actually majored in computer science in my undergrad, but that was focused more on software engineering than web development. I did have a bit of experience, but it was rather limited. The CS experience that I had in undergrad allowed me to do more front end work during my master's degree program. That led me towards Thinkful because I needed a bit more structure in my learning.
Robby did you have experience with computer science before Thinkful?
Robby: Actually, I studied architecture in college, but I took one C++ computer science course six years ago. Since then, the only experience I've had with programming was with Team Treehouse and Codecademy.
Before Thinkful, I was working at Thomson Reuters, providing tech support for tax and accounting companies. Then I decided to take the full dive into web development and software development.
You both did the Full Time Web Development Bootcamp; why choose an online bootcamp as opposed to an in-person option?
Sierra: I had to consider transportation. I'm visually impaired, so it's very difficult for me to find ways of getting around, especially in a city without public transportation like St. Louis. I was worried that an in-person bootcamp wouldn’t be very accessible for me.
Did you find that Thinkful was able to accommodate your needs?
Sierra: They were definitely open to accommodating my needs. I'm very good at coming up with my own solutions, but they were definitely there to support me if I ever had a problem or an issue with any of the curriculum or the assignments.
Robby, did you research in-person, immersive bootcamps?
Robby: Yeah. I was actually doing a bunch of research and applying to a couple of schools in San Francisco and in New York. I live in Michigan, but I'm from New York. One of the biggest factors in my search was cost. Thinkful allowed me to stay in Ann Arbor and not have to put my life on pause and disappear for three or four months. Being able to stay at home also kept the cost down. I know bootcamps aren't cheap by any means, but moving/living expenses are a hidden cost of bootcamps.
As I researched, Thinkful also had a lot more transparency- like reviews, job results, etc. I was looking at a couple of other bootcamps, which were a lot bigger and have been around longer, so they’ve had more stable success. But what drew me to Thinkful was that they heavily invest in the students. They offer a job guarantee and if the students don't succeed, then the company itself is screwed. I wanted to take a risk, because I knew that they would do everything possible to accommodate and help their students succeed in the best way possible.
It must take discipline and self motivation to learn online- do you have any tips?
Sierra: Personally, it was important to find a quiet space in my house where I felt comfortable, but I knew that I wouldn't be disturbed, and to set aside time every day. What I really liked about the Thinkful program was that we pair-programmed from 9:30am to 4:30pm, and then we had a one-on-one mentor session after that. Then I tried to set aside time after class to do extra coding or extra practice.
That accountability sounds helpful. Robby, did you also dedicate a specific space to learning?
Robby: Yeah. I think all of us worked from home or chose a specific space. The Full-Time Bootcamp wasn't too self-driven. Even though we were learning online, we had a pre-set schedule every day. If I were to do it on my own it'd be very scattered and it would take a lot more discipline. But because that structure definitely helped out.
Sierra, you mentioned pair programming. How did you interact remotely with your instructor and with other students?
Sierra: Thinkful provides a written curriculum that we were required to read overnight so that we were prepared for the next day. In the morning we had a 1.5-hour workshop where a presenter went through the material, gave some examples, and did live coding. After that, we're paired up into teams of two or three to work through more examples or on a project.
Technically, we did workshops via a video sharing platform, very similar to Google Hangouts. Pair programming was done through Screenhero, which is a screen sharing application. We followed best practices for pair programming, in that someone was a driver and someone was the navigator. The driver was the person writing the code, and the navigator was reading over their shoulder and suggesting things to do and researching syntax on the side.
What I really liked about the whole experience was not only the structure, but also that the program was project-oriented. With my background, I had a relatively solid technical foundation, but I was lacking project-based, real-world experience. Thinkful did a great job giving me that other side of the coin.
And when did you start your capstone project, Book Kit?
Sierra: Actually, Book Kit was our first full stack application project, and when it came time for our capstone, we threw around a few ideas, but we eventually came back to Book Kit because we wanted to improve it to make it useful to the community.
Can you share your screen and give us a demo of Book Kit!
Tell us what Book Kit does and how users interact with it.
Robby: Book Kit was birthed out of a need we saw to save and share online resources between bootcamp students. We traditionally shared resources through Slack, but Slack has a limit to stored messages. During our experience, a lot of resources were poorly organized or were just eaten up by Slack.
So we decided to build Book Kit. It's built so that you can pull all of your bookmarks in, organize them, easily search for them, and share between people. Users can share folders, upload screenshots, real-time search, etc. We knew bootcamp students were always going to be in GitHub, so we offer log in with GitHub.
Was incorporating GitHub authentication a difficult challenge?
How did you go about planning the project? Did Thinkful teach Agile Development or a specific project management tool?
Robby: Because of our time restrictions, we couldn’t stick to Agile development or test-driven development. However, since we already had one version of Book Kit, we were able to spend time thinking through the functionality.
We tried using Trello for project management, but we eventually used open communication through Slack and Screenhero.
Sierra: That being said, we did spend a lot of time planning, and writing up a really thorough Read Me file for our GitHub page with everything we wanted to see in the project, deadlines, and user stories that we wanted to fulfill. We spent a lot of time planning before we even wrote a single line of code.
Which technologies did you use for Book Kit? Were any of those outside of the Thinkful curriculum?
Robby: Many. Many things!
Sierra: I was in charge of the entire back end, including designing and implementing the database- we used Postgres and the Node.js server. Because we used Heroku, the Node.js server served the static pages and acted as the main API for accessing information. One of the biggest lessons that I learned while designing the back end was the tradeoff between a clean relational database design and what the front end needed.
I also spent a lot of time trying to optimize queries for Postgres, and that helped me dig deeper into Postgres as a database management system. I have queries that are really, really long, but they do what I need to do in one query instead of having to make multiple calls to the database.
What technologies and libraries did you use on the front end?
Robby: We worked with React and Redux as our main front end framework. We used the LESS pre-compiler for CSS using web pack to bring it all together to one file.
How much help did you get from your Thinkful instructor and mentors throughout the project?
Robby: We had a standup meeting every day with our advisor. By the project phase, our instructor became more of an advisor.
During the course, we had two main instructors who would teach workshops every morning and they alternated, and then two TAs that would be on call while we were pair programming who were on call anytime we got stuck on something. They were there to help us think through problems and guide us in the direction we wanted to take.
Sierra: We were able to talk to multiple developers currently working in the field, who could share current information and advice on what they were working with. We had one mentor for the first half of the program, and they got to know you and the areas that you were struggling with.
After that, we had the Flex Week, which was a really interesting experience. During Flex Week, we could each learn a framework or library of our own choice, build a project and present it at the end of the week. We were assigned a specialized mentor for that project depending on what technology we chose to learn.
And after that, as Robby said, our instructors throughout the course took a more advisory role in helping us with the project.
Sierra, I love that you mentioned earlier that you wanted to make technology more accessible. Did that motivation carry into designing Book Kit?
Sierra: Definitely. My main motivation for the project was to help people access this information more easily. Even during the project, I still struggled with my bookmarks in Chrome. I think I had over a thousand at one point, and Chrome's bookmarks manager is really bad for searching and recognizing bookmarks. Book Kit was to help increase organization and help people access that information later on.
As for web accessibility in general, we definitely tried to follow best practices by using accessible forms and elements like that. Although, like I mentioned, I was mainly focused on the back end during this project.
Tell us about a tricky feature during the project and how you solved it?
Robby: One of the main features that we wanted was to have shareable folders (for example, a Cohort 2 folder for our class).
Sierra: We did spend several days brainstorming how to set the rules of permissions and who was able to delete what and when and how. It was a mind teaser, but it was an interesting challenge.
I'm curious about career outcomes and prospects so far since you graduated. Has Book Kit been impressing employers?
Sierra: I've had a few interviews so far. I got sick right after graduation, so it's been a little bit of a slow process, but definitely people seem very impressed by it. It's a great project to illustrate both my passion for information and my technical ability.
Since you graduated, are you still meeting with your mentors about the job search? How is the Thinkful career team supporting you?
Robby: That's been pretty awesome. Actually, after graduating, that’s the reason that I'm very confident in recommending Thinkful to others. I've already had a few interviews, and Thinkful has continued to support me.
Thinkful also pairs us with a career mentor after we graduate and we work with them on nontechnical things like cover letters and our resume. That's been awesome. I think Sierra and I both have the same career mentor and she’s been helpful in marketing ourselves really well. That lets us focus on technical stuff. For me, the career support's been kind of the selling point of Thinkful.
Sierra: And the Thinkful career team is constantly improving that level of knowledge and updating it to conform to the latest trends and standards.
Any advice for someone thinking about an online coding bootcamp or a coding bootcamp in general?
Robby: For me, one of Thinkful’s big selling points was the incredible access to mentorship. Because Thinkful doesn't have to pay for brick and mortar classrooms, they could spend more money on mentors who are actually working.
We were paired with mentors who were web developers working in the field, not just academics. And they fit us in around their schedules as well- the mentors were literally based all around the world. Mine was based in the UK. One of our TA's was based in Australia, so he woke up at 3:00am to teach, which is insane. Anytime we needed help, we could just ping someone on Slack.
Also, I know some people that I've talked to are afraid that an online bootcamp doesn't give them the same kind of leverage or the networking possibilities because it’s not in a specific city. That may be true, but at the same time it allows you to build networking skills in your location and utilize those in the market where you want to work, rather than in a different city that you're not familiar with.
Thank you so much for chatting with me today and showing us Book Kit!