 Thank you guys so much for coming. I'm Kinsey. I'm going to talk about switching careers to be a Ruby developer. So yes, I'll just start. So just a little bit of background so you guys know kind of how I'm biased in my perspective. I think it's important. I come from an untraditional background. I studied advertising at CU, and my dream was actually to work at a big advertising agency. So people were very shocked when I started to become interested in programming. I actually was really, really scared and intimidated to get into it, to be honest. I thought that this is what you had to look like to be a developer. And obviously it was wrong. So I think it's important to realize that and understand that. So the first thing that I went to was a women who code meetup, and I was super inspired. I was really excited to start learning and it all of a sudden didn't feel intimidating. So I went on to do RailsBridge workshops. This is Desi McAdam if you don't know her. She's really involved in RailsBridge, and that was huge. I built a Rails app in one day and deployed it on Heroku, and I was like, oh my God, I can do this. So that was a really great feeling and really excited that I discovered this passion that I have for programming. So I was fortunate enough to do an apprenticeship at Thoughtbot. They have an awesome apprenticeship program. So if you are learning and are looking to do something like that, it's definitely something you should look into. I did a little bit of teaching at G-School. I was a TA there, and it was really awesome because I got to see a totally different perspective and once I started having to teach things, it really solidified a lot of knowledge that I wasn't aware of before. And now I work for a company called GoSpotCheck and we do data collection for field marketing teams and I love it. I get to pair full-time, which is a very new experience for me, but definitely learning a lot and pushing my boundaries with pairing all the time. So my story kind of sounds like a Cinderella story and a lot of stories that I hear are very much this fairytale story of finding your passion for writing code and getting this amazing job and how easy and awesome and carefree it is. And a lot of times, I don't think that it doesn't feel like that every day. So it's important to be aware of that and know that there was definitely a lot of struggle and hardship to get there. So I have a couple things that I want to talk to you as about if you are looking to transition into becoming a Ruby developer, kind of some pointers and some things to be aware of. And also even if you're just switching, if you're already a developer and want to get into the Ruby community, which someone was asking me about earlier, I think it will be relevant to you as well. So Carrie mentioned this beforehand, but working really hard, I picture what you think it's going to be like to get to the point where you can write code full-time and get paid to write code. I thought it was going to be an easy snap of my fingers because RailsBridge was like that. I even know snap my fingers and I had this awesome working app and I was like, oh my God, I didn't realize this was so easy. It actually was not easy at all. So having that in your mind, I think you need to realize that it is going to be really hard and Carrie touched on that earlier. So I was used to things coming very easy to me, being able to work on something for two months straight and getting it and being like, yeah, I know what I'm doing. And I feel like I've been doing it now for two years and I still don't know what I'm doing. I know a lot of senior engineers, I don't know if you guys think this is true, like you guys are all senior engineers, and if it gets any easier, probably doesn't. So it's definitely a roller coaster ride, a lot of ups and downs of days where I was like, wow, I'm a really good developer. I am so awesome, I can rule the world, I can build whatever I want. And then the next day I would be in tears because I was like, I have no idea what I'm doing. So being ready to kind of ride that emotional roller coaster. So yeah, I think it's really important to just be ready and willing to work hard because that was something that I really shocked me to be honest and I have never worked so hard in my life. So there we go, but it was worth it, it's awesome. So the second thing is to kind of go along with this on the other end is avoiding burnout. This is a real thing and a lot of times when you're learning, it feels like you have to work all the time. You feel like you have so much to learn and honestly the more you write code, the more you start to realize that you have so much more to learn. It's this weird feeling, so you constantly feel like you have to work. One thing that I recommend is a Pomodoro technique. So even for the people who are already developers, if you're working alone, I really recommend doing this. You set the timer for 25 minutes, you work on one thing, nonstop, you don't check Twitter, you don't check your email and after that you take a five minute break and you do that a couple of times and then you can take a longer break for lunch or something like that and I really think that it's an effective technique especially because you're staring at the computer screen all day to really get up, walk around and take a break and do techniques like the Pomodoro technique really helped me out. Also I am from Colorado so I do yoga and just maintaining the things that make you happy outside of writing code. Like yoga, I also do agility with my dog. I don't know if anyone does that but keeping with your regular hobbies because burnout is a real thing. I also think that in the industry there tends to be this stereotype or almost this peer pressure of feeling like you have to work all the time. You have to write code all the time, all day, every day, after work on the weekend especially as a beginner because you wanna feel like you can get to that point where you know something and really can own what you're doing. I have other passions besides writing code and honestly I'm really jealous of people who can do that and whose passions are just writing code. I think that's awesome and I think they're amazing developers but I can't do that all day, every day without totally burning out and that happened to me so just not feeling guilty for not wanting to do it all the time. I think it's important. Also collaborate so I always had this idea beforehand when I had that stereotype in my mind that you sat in your mom's basement and wrote code by yourself and you didn't have to collaborate or talk to other humans. I honestly thought that was really appealing to be honest. I was like, yes, I don't have to deal with people but I now pair full time so I feel even more that I collaborate and have to talk more than I ever have at any other job which I think is funny but even if you're not pairing I really think even if you're sitting alone, put your headphones on, cranking code that's one of my favorite things to do. It's still very much collaborative. You're working on teams, you're dealing with people constantly and you're also having to communicate through your code so I think it's really important to remember that communication and collaboration and dealing with people is a big part of the job and not forgetting that and forgetting your people skills which I thought I could do. So yeah, just remembering how important this is. So one thing I wanna talk about specifically for people not only wanting to get into writing code but also who are looking to get into the Ruby community is really building your brand. I think that's important and I see a lot of people in the audience who have really done that and which has made them super successful. Networking is super important and I think that's especially true in the Ruby community. You hire the people you know or at least that's true from what I've found and that it's a very, very social community. Like earlier in the keynote or not the keynote, before the keynote, Marty was saying that they have all these social events which is rare for some conferences and I think Ruby is a very social community, that's all the social events that we have here. And I found that people hire people they know and trust. All the jobs that I've had, Thought About Go Spot Check Now, Galvanize, they were all through people I hadn't met and no, face to face. I have never submitted a resume for a job and gotten it, I must say. It's really hard to do it this day and age, I think. I think you can be lucky but I really think you should really trust networking and know that that's the way to go. So I'm gonna talk a little bit about these things which I think are important to have Twitter. RubyConf has been a huge hashtag talking to people on Twitter. I see a lot of people that I know and I just know them from Twitter so I think that's important. Find someone that you really respect in the industry and look at who they're following and follow the people that they're following. That's something I did when I was first starting out because I was like, I have no idea who to follow, this is so scary, there's so many people out there. But finding someone and following all the people that they followed really gave me a direction. Also GitHub, I love this picture. Having a GitHub profile is super important and even if you're just doing little kadas or little exercises, don't be afraid to put them on there. I think people really value that when they're hiring. LinkedIn, I don't think is as important but important to have a way that you can connect with people professionally. Also Meetups, Meetups are huge. That's where I really met all the people in my career who have made a big difference and who are mentors in my life. So I feel like it's really important to go out into your community and go to Meetups. I'm not sure if everyone has the luxury of doing that but I fortunately live in Denver where there are a ton of awesome Meetups and I get to meet awesome people who are excited about writing code and who are willing to teach and I think that's awesome. So really taking advantage of that and you get free food and drink at most of them. So it's really a win-win situation. Also going to conferences but everyone is here at a conference so you're already doing this which is awesome. I've met a lot of really awesome people learned so much so it's really awesome that you all are here. Sorry I keep saying awesome so many times. Also open source. I think open source is very, very important if you can do it or you feel comfortable doing it. I don't think it's a requirement which I will talk about later but if you have the opportunity to do it or to learn from someone. Ask someone who is really big into open source and have them ask them if there's something small that you can do. Lauren and Ernie are really big open source contributors and have their own gems and own projects and I'm sure they would be willing to point you in the right direction and that's what I did and it made a huge difference because I wasn't intimidated anymore. I had someone who told me exactly what to do. I didn't feel stupid asking questions so I think that's really important is finding someone that you can trust who won't be like wow your code sucks because that's the scariest thing ever. Also hackathons. So when I was first learning I went to a hackathon and I got to pair with an awesome developer for two days straight. So that was awesome. Not only was I doing something really cool for the city of Denver but I was also learning a ton so if you have a hackathon that you know of where you can pair with someone like that that's a really good opportunity. Also volunteering for outreach programs like Rails Bridge and Rails Girls. Even if you know very little you can still teach and that's kind of where I'm going with this. You can mentor people even if you just know basics like what's an array, what's a hash you can teach and automatically things will be solidified for you. It's pretty awesome so definitely recommend doing that. Another thing that a lot of people who are entering the industry I think struggle with is shooting too high or shooting high but being afraid to take jobs that are not so ideal. So I think it's important to just get your foot in the door and be able to get there one day but I do think that you should shoot high but you shoot for your dream job and if you don't get it you know pick yourself back up and keep trying. I know I was doing that and I didn't get a couple jobs and I was like wow maybe I shouldn't do this anymore because I'm not good enough and you know I just needed to not shoot so high and take my time getting there. So we always hear of these jobs that have like coffee carts and you can take your dog to work. They have chefs that make beef tartare for you on the drop of a dime. You can work remote in places like Hawaii. Also I've heard you know ridiculous offices that have all these amazing perks and you know I think that this is very much a very exclusive part of the tech community and shouldn't be an expectation and I often hear a lot of people when I was you know teaching at G school saying that that was something that they wanted but I don't think that's necessarily a reality. Another thing is you know building something that changes people's lives which is you know harder to do sometimes as well but just find a company that will go to back for you. You know it is an investment to invest in a junior I think or to train a junior and who doesn't really know what they're doing who doesn't have a lot of experience so just realizing that. Also a place where learning is valued I think that's more important than the perks to be honest and can be supportive because if you're entering a job and there aren't enough senior developers or there aren't enough people who can support you it's gonna make learning really hard and it's not gonna be the best fit. So I think that should be your number one priority when you're looking you know to jump into this. Also finding a mentor I think it's really important. I saw a thread on a chat room in Code Newbies and somebody was talking about how they thought mentors were pointless and really hard to work with and I think that's true but I think it's worth putting the effort in to finding a mentor. These are some of my mentors and they've been hugely awesome and really given their time. I also think it's important to give back to your mentor so if they do something nice for you and they spend their Saturday working with you buy them lunch like find out a way where you can pay it back to them. I think is really really important. They can really help you through a lot of things and point you in the right direction and also like I said help you find connections in the community if they know someone who has a job they can introduce you and that personal introduction will go way further than a resume like a cold resume and email. So yeah, connections go a long way. Another thing I want to talk about is perpetuating stereotypes. I think we're in a really awesome position as new people coming into this really awesome community to make it even more awesome. I'm just gonna keep using awesome. So yeah, I think it's important to kind of be aware of stereotypes and help in breaking them down and I can use this picture because it's my boyfriend but this is what I think of when I think of a developer. Beer, t-shirt, hoodie, glasses and I still perpetuate that stereotype. A lot of times people who look differently than that aren't taken seriously because they maybe don't look the part and I do that too. So I think just being aware of our stereotypes and our biases is really important. Also kind of around the argument of what makes a good developer. I've been reading a lot of interesting blog posts lately of I was kind of doing some research for this talk on what people thought made a good developer. So a couple of things that I saw was Stack Overflow Reputation which I think is really dumb. Stack Overflow can be the worst. Also somebody was saying open source and if you don't contribute to open source you're too shy to share your code because it's crap which I think is terrible and I think a lot more reasons kind of go into it. It's hard to break into open source. Also education which I obviously think is false. I know a lot of people who don't have traditional computer science backgrounds or even have gone to a code school and have been self-taught and totally have done it so I don't think that's a very fair way at all to judge someone as a good developer. So because I don't have a computer science degree does that make me a bad developer? I think it makes me a better developer. Just kidding. This other article also, so number six really kind of made me upset. A cubicle or desk populated with toys that came from ThinkGeek. So once again really perpetuating the stereotype of what we think a developer is and what makes a good developer. So this is, the title of the article was like symptoms of a good developer so that's why it says symptoms here. So to clarify that. So yeah and also number three kind of, okay so you know buzzwords so you can throw around buzzwords that makes you a good developer. Which I thought was pretty laughable. Are you guys still reading this or can I change it? Good, okay. So I think we really need to open our minds to new ways of thinking. A lot of times I have been told in like one-on-ones that there's nothing I could do better but I am held back because of my background and you know I don't really think that's fair because I don't have a computer science background or a math background. I think I just have a different way of thinking. So I'm hoping in the years to come that these new ways of thinking will be embraced and also embracing different backgrounds because right now it seems very much like the same person way of thinking. So I think that we have the power to change that as new people who are coming into the community so I think it's really important that we do that. So now on to being passionate. Not necessarily what you think. So when I first made this talk it was before I had listened to this podcast with Sarah May and Brandon Hayes. I don't know if you guys probably know them. And I was like you have to be passionate about writing code all day every day. And I was lying to myself. I am very passionate about writing code but for different in different ways and that's something they talk about. So they talk about different motives for being passionate about writing code. They talked about how money motivates people, how making a salary high enough to support your family is a motivation. Building things which is one of my motivations. I don't necessarily get really passionate about, I don't know, writing a block or something like that. I'm really passionate about building things and the work that it takes to get there and also being able to use this tool one day to have some sort of social impact on the world. So I think it's important to know that it's okay that you're not really passionate about writing code. Maybe you don't love it and that's what the podcast was about. So I thought that was a really interesting perspective to think of. Another thing is embracing that you are bad at this. So you well stuck at this at first. You well fail. You will always have a test suite that is turning red more than it's turning green and it's the most frustrating thing and that's okay. And I think it's a really awesome lesson in life to keep failing over and over again. It doesn't get any easier, kind of like what we talked about earlier, but the good thing is you're always learning and you always get to look forward to never getting stale and there's always something new to learn, always a new technology. So I think that's super exciting and that is another reason why I think this is the best kind of industry to be in right now. So really embrace the fact that you don't know anything and that you're bad at it. Own it and don't lie about it. I struggled with this at first in interviews. I would pretend that I knew what I was talking about and throw out those buzzwords like Arduino and TDD and BDD. And then when it came down to actually having to show something in a period interview, I was totally screwed because I didn't know what I was doing. I just knew the buzzwords. So that was a very good lesson too. But I also think it's important to realize the middle way in this. Don't go too far the other way because then you have imposter syndrome. So kind of own what you know, but also own what you don't know and being self-aware is hugely important if you wanna be a good developer, even be a developer. So another thing is fighting for your right to write code. And I have this picture of the BC boys. So instead of fight for your right to party, to fight for your right to write code, I think this might pertain a little more to the ladies in the audience but also I've heard this happening to men too. But a lot of times it's awesome. We talk about people coming from different backgrounds and how great that is and how it's really gonna make this an awesome diverse community. So if you embrace your background and you're telling this potential employer, like I came from a business background so I'll be able to talk to clients and do all this. I have all these other skills that are just gonna make me that much better of a developer. The problem is you use it to your advantage but the problem is you could get pulled the other way. They'll all of a sudden have you doing more things that are relevant to that. And that happened to me in a job. I started taking on more things that were dealing with people and softer skills and it ended up being where I wasn't writing code anymore. So if that happens, I think you really need to evaluate. I came to this kind of fork in the road. Should I keep writing code or should I not write code and just do this because I'm good at it or should I keep fighting to write code? And I'm really glad that I chose to fight for my right to write code because I really loved doing it and I was just scared but that might not be true for everyone. So just being aware of that and being aware that that happens. Yeah, so interview a lot. Don't apply for your dream job if you've never done a technical interview. One thing that I recommend is making a list of your top 10 companies and then starting from the bottom and going up. That way you have a lot of practice. They're a lot different than any other interview and you will suck at them at first. Like I mentioned. So it's the only way to get better and more comfortable with these is keep doing them over and over again. Mentors can also really help with this because you can practice doing whiteboarding interviews even though I think whiteboarding interviews are terrible. So don't do them. And you know, you might have a disadvantage if you're not coming from a computer science background. I've gotten asked a couple of questions that I didn't think were relevant to the job but were just very much computer science buzzwords and I don't think those questions are very fair but be prepared for them even though it'll be really hard to answer if you don't have a four year degree under your belt. But again, just own that you don't know it. And know that you can do it. You know, I love that picture. Be careful, there will be a lot of people who tell you that you can't. I know my parents when I first started doing it were like, you're gonna sit behind a computer in a dark corner all day and write code. Once again, this stereotype and this definitely not like that but having to convince people who don't know what it's really like is really difficult. So not getting too discouraged for people saying that you can't do that or it's not your personality is a big one. Yeah, anyone can do it if you want. I really think that it is a learned skill or it can be a learned skill and you don't have to have some innate sense of doing it. It might take you a little bit longer. I know it takes me a little bit longer to get things and then someone comes and does it in five minutes and so jealous but yeah. And I really do think that Ruby is a great place to start. It's an awesome community. And we were talking earlier and we were talking about how it really is more than a programming language. It's a kind of a community and I think that's really awesome and really rare. There's this awesome, what is acronym? Acronym, Minswan. I actually learned about that from Terence. And it's, Matz is nice so we are nice which I think is awesome. And I think that's very true in the Ruby community. Very open, very willing to help. So don't be afraid to ask someone for help because more than likely if you buy them a coffee and you show that you're really serious about it they will totally give you a half hour or an hour of their time. Yes, so I think Ruby is a great place to start but I have to have the disclaimer I'm not writing Ruby anymore and I'm actually going into doing mobile development which I've been doing for the last two months and I've really enjoyed it and I definitely think it is the future but it's making me better at Ruby in a weird way I think learning Java, a different language. So I think it's cool if you wanna explore other things too. But I do think that Ruby's a great place to start. So for those of you who are sitting here and not sure kind of what next step is if you are looking to get into this, figure out what's going to work for you. A lot of people ask me, should I do a bootcamp or should I do it on my own? I really think that these immersive six month bootcamps are really awesome and if you can quit your job and spend six months, eight to five, learning a ton on your own and really dedicating that time not doing anything else, doing it with little direction, that's awesome but most people can't do that and that's why I think the programs are really good for that because they actually make time for it which can be a big thing. Also competition, a lot of the junior jobs right now are going to these people who have been writing code for six months and have direction and have been taught by professional developers. So that's a huge benefit, I think. And one thing that I wanted to mention to be aware of is the market is starting to be saturated with junior developers and so that's why it's really important to make those personal connections, build your brand, really go above and beyond. So that way when they think of a junior, they have tired junior, they think of you because you know them and you've worked hard and you've really shown that you're passionate about it. That's all I have for you guys. This is my Twitter handle, my email. I wanna thank my company for sending me out here and also to RubyConf for having a beginner's track. That's huge. A lot of times you go to conferences and the talks are way up here, you have no idea what's going on and it's really discouraging so I think it's really cool. That RubyConf is doing a beginner track now. So cool, well thank you guys for coming so late and hanging out, I appreciate it.