Planet Argon recently hired two Epicodus graduates as junior Ruby on Rails developers: Abby Smalls and Ana Tighe. I took some time to sit down with them and see how things are going so far. It was great talking to them about their experiences starting as junior developers here. We touched on some interesting points, including company culture, favorite apps, music, and some insights for people interested in development.
Q. What was your career like before you started at Planet Argon? Why did you choose programming as your second career… or third or fourth?
Ana: Before I came to programming I majored and worked in forestry. Then I did some office management and after that I became an insurance adjuster. Forestry was something I thought I’d be really passionate about, but I got tired of living in a town of 250 people.
Being an insurance adjuster was safer and more stable, but at a certain point there wasn’t anything more for me to learn.
I had always liked programming. I did a little in forestry. I did a lot of statistics, biometrics, mapping and data management. It was hard for me to figure out a direct path into programming until the bootcamps started popping up. Then I could see the direct path: this is what you learn and then this is what you build. There’s so many languages out there, it was difficult to figure out what you had to do to get started. I took the plunge and did programming once that path became clearer.
Q. When you were doing your office job at your insurance company, how was that different than your office environment in programming?
Ana: Insurance was really customer focused. I worked from home and drove to people’s houses to evaluate the damage on their house. Programming, you still need to interact with customers and co-workers, but it’s the same people and it’s pretty predictable.
Abby: I worked at a hostel for 5 years, so my first career out of college was, though unplanned, hospitality management. Some of my studies were directed towards fraud investigation and accounting. I was hoping to apply those studies in the public sector, but such jobs were, and still presently are, few and far between. I struggled with whether to apply those same studies in the private sector, or consider another career path.
I had done some computer science in college, so had considered programming as a career before. We learned theory: Java, C, C++, but never built functional apps, even small ones. I had no sense of how to put it all together. I didn’t know how to take it apply it moving forward, and it was my second major, so eventually I let it go. It wasn’t ‘till last year when a friend sent me an article about the bootcamps that I could see path to hard skills and employment.
Ana: It’s really interesting that although you studied computer science in college, you couldn’t see how to use it practically. I think most people see it as a super practical major, one where everyone who studies it gets jobs, but they couldn’t express that to you.
Abby: It is practical – my dissatisfaction was clearly based on the fact that I didn’t get to see projects to completion. Even if you make some simple GUI with one pop-up window that says ‘Hello, World!", it’s satisfying. But I know it worked out well for a lot of my peers in the end.
Q. What type of person do you think would thrive in an environment of web development?
Ana: I think you have to be reasonably detail oriented and logical. You have to really like to have a problem and break it down into pieces. I think being a developer means enjoying thinking through problems.
Abby: I think you have to be pretty self directed too. You have to have the initiative to reach out if you are having problems if you are not comfortable taking charge of your day’s work and reaching out to other people, I think you would have a hard time.
Q. What is a typical day like for you at PA? Or are there no typical days?
Ana: I’m getting in the flow of getting tickets assigned through JIRA, reading through the emails and chat, figuring out what I need to work on what people have responded to. Handling those things. Usually we PM back and forth about details in tickets. 50% is administering to those things and 50% looking at code.
When merging code, I change the Jira status to “review” and assign the ticket to Carlos. Then we discuss the changes and sometimes get together to review the best way to solve the problem.
Abby: Coding on the couch? Estimating meetings (my initial thought times three). Bug fixes and internal projects. Sometimes my work is assigned by Olivia, our PM, or Carlos, our Director of Development, but if I stumble upon a bug or need to extend an internal project, there’s freedom for me to add on to my workload that way… JIRA’s been straightfoward, easy to pick up on. Our days are not typical (yet). Hopefully it stays that way!
Q. Do you code just from 9-5 or do you feel that you code 24/7 or when inspiration hits?
Ana: At Epicodus we would code all the time
And now I feel like I have more of a structure, I can come in and work on things and then go home and not worry about it. I do still think about the problems. I don’t feel like I need to sit in front of a computer to do that.
Abby: I’ve restrained myself a bit from doing work at home. I did heaps of that at Epicodus to keep up. I hope to have a more balanced professional life.
Ana: Even when I’m home I’m watching Netflix, watching something, I’d have two screens open. It’s better to have a focus and be doing that for 8 hours a day rather than doing it absent-mindedly for 24 hours.
Q. What are you passionate about outside of coding, do you feel that coding coincide with your other passions?
Abby: Actually, not too much. Motorcycling, running, hiking, playing violin.
Ana: I do a lot of folk music, dancing, hiking.
Q. What kind of music do you listen to when programming? Is it similar or different to your every day music?
Ana: I like folk music and eastern european music. When I’m coding I put on spotify and listen to either hip hop or techno. Something that is repetitive and drowns out everything else.
Abby: I’m curious if other people do that, I do that too! Cheesy pop music, something that you don’t care about. You don’t want to put on something that makes your mind wander to the serious things, your personal life.
Ana: I think I’ve actually thought a lot about music. I’m trying to get into classical music because my violin teacher is giving me classical music and it’s all about the story arc of the piece. There is no story arc in my techno music. I don’t want anything dramatic. I want something that gives me energy but is repetitive.
Abby: I put songs on repeat if I can’t think of something new to listen to, just to have background noise. I think I listened to “Wham!” for 2 hours. Put me in a good mood. (laughs)
Q. Why Ruby on Rails, what did you like about it when you first were learning it. Why did you apply for a Ruby on Rails job?
Abby: I didn’t like anything about it when I first started! But once the confusion dissipated…
Ana: I hate to admit this because it makes it sound like I didn’t have a passion for Rails. Before I started the program I didn’t understand what rails was or why I would need it. I had ruby was similar to Python, so I knew if I wanted to change directions later it would be OK.
When we first got into Ruby on Rails, understanding all the database relations underneath it, there’s so much magic that it could be overwhelming. I’m starting to get to the point where the magic is really nice. I can see what’s going on and then if I try to simplifying the code and it does it for me automatically. I also like that Rails is very well documented and well thought out. So it takes a lot of the planning away.
Q. Had you tried Python or jumped straight into Ruby?
Ana: I jumped straight into Ruby and did the How to Program in Ruby book. I didn’t really have any programming languages before, but I had a lot of the concepts already. Now I feel more like the language isn’t as important as the concepts behind it.
Abby: I had used Python and Java before. I felt competent enough to pick up another full framework if a job asked that of me, but I did want to stick with Rails. I had already jumped around enough in careers, I rather wanted to obtain of a solid grasp on one framework, before branching out.
Q. What was the process like starting at Planet argon, interviews, set up times, barriers you overcame?
Ana: Configuration and learning versioning was really complicated and still challenging. Building everything from scratch, you don’t have to deal with legacy code in different versions of ruby and rails.
Abby: In Epicodus we were using Rails 4 consistently and not dealing with versioning. The whole development environment was configured for us. But when we got to PA on the first day, our brand new laptops were a blank slate. That was a trying process.
Abby: Also, I have learned that despite ignoring my mother’s pleas to FaceTime for years, I have zero choice now but to get over all fears of videoconferencing immediately. And though I haven’t been interacting with clients myself yet, I very much appreciate that Planet Argon values direct communication between the developers and clients, and not just the PM and clients. So it will be worth getting used to.
Are there any tools, gems, that you weren’t familiar with that you love to work with in your day to day?
Ana: All sorts of debugging styles.
Ana: I also really like Hipchat. I thought it would be weird to sit in a silent room chatting with people. Now I like that you can listen to music and don’t have to walk over and bother someone to see if they are busy. It’s nice to have everyone in the same place.
Abby: I find it reassuring that one can work from home. We worked on all the snow days no problem. People in other positions don’t have the luxury.
Ana: Even in the job where I worked from home I didn’t feel like I had any interaction. I would call co-workers but it was always 1-1 chats. There was no group chat and that would have been a good addition to team building and open discussion of things. That was really isolating. Here, I can imagine working from home and not feeling isolated.
Q. What projects are you working on right now and what has been your favorite project thus far?
Abby: We are working on a few internal apps. I’m working on a site upgrade from ruby 1.8.7, Rails to 2.3, hopefully all the way up to ruby 2.0, Rails 4. I don’t wish to admit how many hours over my original estimate I’ve gone.
Ana: I’m mostly just doing bug fixes right now, which I really enjoy. The problem is isolated to one little thing and making the fixes is really satisfying.
Q. What concepts did you learn that were code school that were immediately helpful for your projects here?
Ana: Testing, I will always say that testing is the most important thing. Being able to look at a feature having specs to make sure it’s still working.
Abby: I agree with that, the concept of testing was new to me in code school, but it’s truly invaluable.
Q. Do you feel that being a female programmer brings any stigma to it?
Ana: I haven’t felt that in practice, though if you read the internet there’s that sense. I haven’t experienced that yet and that might just be Portland. I think there’s so many different places you can work as a programmer that it doesn’t really matter. I think you can find the environment and company that is right for you.
Abby: When I was in school for computer science, the handful of women in my 4 year program dealt with some pretty blatant sexism. I know that there are are still issues for women in programming out there, but from Epicodus to Planet Argon, I’ve had a short stint and a very pleasant one. It’s great.
Ana: There’s a lot of things that women tend to be good at, like collaboration, that are completely devalued in computer science programs. That was my sense when I was looking at CS in school. Every guy in my dorm was taking the intro to CS test and it was super competitive. I thought, I don’t want any part of that! I didn’t even see the code and I didn’t want to approach it. It’s been surprising and nice to see that experiences I’ve had in customer service are really helpful in collaborating and doing projects here.
Q. Are you attending any technical groups/meetups?
Ana: I went to the future talk with Sandi Metz, and learned about her 5 rules of programming. I enjoyed hearing her philosophies about programming in teams, as well as rule following and ways to be a good programmer and team member.
Abby: None consistently yet. I’m pretty jazzed to attend Code for Portland’s kickoff meeting this coming weekend, I can see that leading to my regular involvement in civic tech projects.
Q. Are there any things you wish you learned in code school that would have helped with the job transition?
Ana: I think more UNIX.
Abby: How to communicate solely over an instant messenger.
Q. Can you pinpoint what your most useful piece of knowledge from working here so far is?
Ana: `tail`, I don’t know.
Abby: If you are still stuck after two hours just ask.
Ana: It’s so hard to say just one thing. There’s a lot of things. General concepts. Active Admin process, so much more to Ruby on Rails. The scope, attributes, all those things that can be in the model.
Abby: I anticipate that we’ll be having epiphanies every day, for a very long time.
Q. Is there anything you’d recommend for other people who are looking to be developers?
Abby: Don’t be afraid to take a bootcamp program like we did. It might be easy to learn a language’s syntax as home, but a code school offers much you couldn’t do alone. You wouldn’t get the hundreds of hours of pairing. The emphasis on writing tests. Assistance with the job search. Great stuff.
Ana: Learn testing. When you get into a framework like Ruby on Rails and you’re working on a huge application, it’s important to be able to change things and still know everything else is working.
Abby: And it’s so easy to avoid the unpleasant tasks when you are teaching yourself something. The structure, at code school was it’s greatest benefit.
Ana: Every project you do teaches you a new concept that is difficult and painful. This is the only way to learn it.
Abby: Also, don’t try to apply to too many jobs at once. It’s not just interviews that you’ll have to budget time for. Coding tests are can be very time consuming. So if you apply to 5 jobs and they all say, “do this test in the next day/48 hours/week,” you might have to pick a couple or appear incompetent to all.
Ana: Specifically for Ruby on Rails, you need to have a Mac. To generalize- you have to look at what other people are using. You are going to waste a lot less time if you’re trying to debug something and there’s a community of people who have done it before.
Dear Reader, Are you a junior developer? What was it like to start out in your agency? Did you relate with any experiences that Ana and Abby had?
As always, thanks for reading, and look forward to seeing some posts from Ana and Abby in the future.