Kelvin Lightner is a #YesWeCode Coding Corps 2017 alum. After attending the University of California, Berkeley and earning undergraduate degrees in legal studies and economics, Kelvin became a consultant at Deloitte. Once on this career path, however, he found that the business side of his work was not logically challenging enough, which prompted him to pursue an education in computer science. Since graduating from the Coding Corps program, Kelvin joined Intuit as a software engineer, focusing on front-end development within Quickbooks, where he has been coding for the past six months.
#YesWeCode: What do you like most about your career?
Kelvin: You know when you are in college and you're trying to figure out that perfect balance between something that you actually enjoy doing; that allows you to utilize all of your skills, and also where you see a need for your talent and a need for your skills to continue to grow over time? I would say all of those things are true about my current job and about software engineering as a whole. I am a unique developer in that I do not have a computer science degree yet. I'm actually working on my post-bacc right now, but regardless I am still able to utilize my critical thinking skills, my people skills, emotional health skills, and overall passion for tech. I'm able to utilize those things and expand those skills over time as well.
What goals do you most want to accomplish in this work?
My goals ultimately boil down to three points. One, I want to grow technically. What that means for me is that I want to continue learning new things and continue challenging myself. Two, I want to grow as a person, meaning when I'm faced with difficult scenarios, whether that be team dynamics or (organizational) structure or whatever it is, I want to continue to handle and learn to better work with people, to better show respect and communicate abilities that receive respect. And my third goal is to create financial stability for myself and for my family. I think it's super important to acknowledge that we work for the financial safety that it can provide. Maybe not for that, but it is absolutely a byproduct of the work that we want to do. I think that is something that's worth not overlooking. I know that financial safety and security is important to me, and it's something that I am excited to be partaking in, and something that I am excited to be passing along to my family, whether it's my nieces and nephews, or my own children one day.
If I can add a fourth point to that also, I really want to impact the lives of other Black people just like me. I am half Black; my dad is Black and white and my mom is Black and Mexican, and just being a person of color in this world definitely still comes with its challenges, especially in the tech industry. I do my absolute best to pour back into the communities that have raised me as their own, and the organizations that have helped me get where I am today; #YesWeCode being one of them.
What do you think is next for you in your work, whether it be at Quickbooks or elsewhere?
Along the lines of the goals that I said prior, I want to continue personal development. I want to continue to move forward with my post-bacc in computer science; to learn the foundational elements of the things I'm doing every day. And I'm doing it for myself, and I'm doing it so that when I'm faced with harder, more difficult issues over time, I will have a better framework for grappling with them since I would have a better understanding of computer science as a whole. I am also looking forward to just growing in my day-to-day skills. It's so fun because being an engineer is something that always keeps you in an uncomfortable position; a position where you are constantly learning. There is so much to know and it can be very overwhelming and very daunting, but it's really cool how much you're able to learn when and if you're dedicated, and for work you do hard things every day.
What made you decide to want to pursue an education in coding and programming in the first place?
Prior to this I went to Berkeley, and my undergraduate degrees are in legal studies and economics. I love law, I love business, but it's super funny because now that I look back on those things, I love law and I love business in that they both provided an opportunity for me to logically reason through things. When I was a consultant at Deloitte, I saw that my business work wasn't logically challenging enough, to be honest with you. I wasn't necessarily thinking through systems, I was implementing them, and that's something that I really longed for. I remember walking into Dev Boot Camp and meeting Tamyra and it was like all the pieces just came together, where I just saw "Is it possible that I, as a grown person who has a college degree already; who thought they were done learning, in the formal education sense, can go back and be a computer scientist; can be a front-end software engineer?" It just worked out perfectly, I remember picking up and writing my first slice of code and falling in love with it. And it's fun, it's fun to see that I've come a little bit of a far way since those very few lines of Ruby.
What was the most gratifying or memorable part of your coding education experience?
There are two memories in particular that stood out to me. I just described one, writing those first lines of code. I remember it was a for-loop where I printed out all of the numbers in an array. It was something so simple, so beautiful, and there's this extreme sense of accomplishment when you see that you're able to do something. The computer is so, so powerful. And being able to learn how to manipulate, whether it be data or memory or whatever else, it is really fulfilling. It's kind of like a reward when your brain dispatches those hormones, because you have achieved something really cool. That's exactly what it is, and it's very addicting. So from those very first lines of code, it's very addicting, it's super fulfilling, super awesome, and that brings me to my second point, because even though it is very fulfilling to make something work, it is very defeating when you think that something should work and it's not working.
I remember I was the most defeated I have been in coding when I was learning to code in coding school, and I was particularly learning classical inheritance. I was expecting that this instance of a class was going to have these properties and I was expecting all of these things; all of these inputs, all of these outputs, and so on and so forth; all of these methods that should have been appended to the class but they weren't. What I realized was that I actually didn't fully understand what was going on, which brings me to my overall point: though something is extremely rewarding when it works out, when it doesn't work out we need the perserverance to continue through difficult circumstances because at the other end of that perserverance is going to be increased knowledge, increased confidence, and increased hope. And when I say confidence and hope I'm meaning in your ability to work through really hard things. I think being a software engineer is about learning how to wrestle with things that should be working a certain way but aren't working that way, and working through the small details as to why that's exactly happening. And that process is extraordinarily valuable, being able to stick it out.
That's great, that leads into the next question too, because you were talking about perserverance, but what should prospective students know before they begin their coding education?
I would say get ready to become mentally strong if you aren't already. And what I mean by that is the same principle applies when you're working out or exercising: the only thing limiting you as an individual from doing all the things, whether that be exercising or coding, or other various limitations that we have, we overcome these things through an increased mental strength that says "I will not be defeated by this. I choose to continue working towards the goal of solving it. And even if I am not able to solve it perfectly right now, I am dedicated to learning how this is solved; learning from this and moving on to the next one where I can continue to practice what it means to perservere, and I will excitedly long for the end result."
Why would you suggest learning to code to a future student who may be interested in the tech field?
Because coding is the future, young ones. Honestly, it's the same reason why--it's a little funny, I love trying to inspire people, especially my niece and nephews; they're really young and I have monetary coding challenges for them. Like when they're able to solve something I give them $10. Why? Because I want them to one, see that hard work equates to money. Two, I want them to learn how to critically think through these things. And three, I want them to be exposed to the opportunity, to the power of technology that has been shielded from people of color. And I'm done with that, I don't want our community to continue in our powerlessness simply because we are ignorant of the opportunities that are out there and how fun the work can be.
Do you have any advice for future coding students that are looking specifically for a job in the tech field?
I would say talk to a majority of coding school graduates, or even non-traditional engineers, and most of them, I bet, would tell you that the hardest part wasn't actually learning how to code; wasn't actually developing the mental strength to continue. The hardest part was...the job search. Because, unfortunately, as we've all been trained in propriety, when people tell us no to a job, there's this potential that we're going to take identity statements from it and say "They denied me this opportunity, therefore I am not smart enough, I am not capable enough, I am not where I should be, I am a bad engineer, I am fooling everyone into believing I can do more than I actually can, I am this, I am that, I am bad." And the funny part is often times we don't even need other people to tell us these things, we just start inherently believing them ourselves based on not receiving that opportunity.
I really want to encourage people out there who-- especially non-traditional engineers; I really want to encourage you in particular to start to identify those areas of negative self-talk and to stop it, because you are worth it and you are smart enough and if a company or a person is not able to see the potential that exists within you, you don't want to work for them right now, or they're just not ready to push you to live up to your full potential. And that's what's most important, it is so important to know and realize that when we hire people, especially in software engineering, it is oftentimes not because of the background they come from but because of the drive that we see in them. You want an engineer that says "Though you don't know all the things, because it is impossible to know all the things, I believe in your hard work. I believe in you as a person. And when I believe in you, I believe that you will wrestle with hard things. I believe that you will bring something unique to this development environment. I believe that you will be a great teammate, and that you have something to teach us just like we have something to teach you."
So I would say don't be discouraged that you haven't found that perfect job, or people are looking for various qualifications, or you're not cookie-cutter. I'm not cookie-cutter. I'm a Black engineer with cornrows right now, you know, I am not cookie-cutter, no-one is cookie-cutter. And I just want to encourage you to continue, because your hard work and your perserverance will produce tremendously awesome fruit in the future. Take every rejection as a learning opportunity to even illicit feedback about interviewing style or coding challenges, etc., but continue to hold your head high because you are worth it.