Code[ish] logo
Related Podcasts

Looking for more podcasts? Tune in to the Salesforce Developer podcast to hear short and insightful stories for developers, from developers.


  • junior developers
  • newbies
  • new careers
  • coding bootcamps
  • changing careers

20. Becoming a Junior Developer

Hosted by Chris Castle, with guests Shirley Xiaolin Xu and Eric Chen.

Transitioning into a career in tech can be intimidating and challenging, but everyone starts somewhere. On this episode, Chris Castle chats with Shirley Xiaolin Xu and Eric Chen about their experiences as Junior Developers at Heroku. After the initial barrier of learning how to program, they faced many new challenges in the workplace, like engaging with mentors and managers, gaining confidence to ask more questions, and trying to learn the latest tech lingo.

Show notes

Chris Castle sits down with Shirley Xu, who went through a coding bootcamp, and Eric Chen, who is a recent graduate, to talk about their journey into their first programming jobs at Heroku. For both of them, the experience of programming in a day-to-day role is vastly different than what they experienced at school; namely, rather than analyzing algorithms, they were exposed to Ruby, Rails, and entire groups of people involved in shipping features. They recognize that they went through a period experiencing imposter syndrome, before realizing that every developer, no matter their status, shares those same feelings.

Certain soft skills were also acquired. Eric learned how to move past his fear of looking ignorant and just ask questions whenever he didn't know a term or a process. He felt that this made him into a better engineer and, besides which, no one had ever refused to explain a concept. Shirley discovered that in order for her to achieve her goals, she needed to express them clearly to her mentors and manager. For example, after she expressed that she would one day like to become a technical lead or manager, her mentor was better able to develop a long term plan of the concrete steps that Shirley would need to take to get there.

Tech moves fast, and a portion of this episode is dedicated to how everyone keeps up with the latest trends and terms. All agree that the breadth of knowledge is simply too much to consume, and it's okay to not know everything. That doesn't make you a better or worse developer: it simply means your expertise lies elsewhere.

The episode concludes with some advice for anyone not in software development, but is considering a change. Eric suggests keeping yourself motivated, with time blocks in your schedule dedicated to simply learning. Shirley provides a long list of resources, as well as a six-to-twelve month timeframe to go from a neophyte to your first job.

Several coding bootcamps and online tutorials were mentioned as possible starting points for those interested in transitioning into a career in tech:


Chris: All right, welcome to another episode of Code[ish]. I'm Chris Castle, developer advocate. And I have two glowing humans here with me. Why don't you both introduce yourself? Shirley?

Shirley: My name is Shirley Xiaolin Xu and I'm a software engineer at her Heroku. Before joining her Heroku, I ran a model agency/hustled a bunch of side jobs in South Korea. And before that, I went to school for international relations.

Eric: My name is Eric, Eric Chen. I'm not as cool as Shirley. I came in from the Futureforce internship program. I interned for the greater Salesforce org, Salesforce Core for about two summers. So that's six months. And then I've been with Heroku about a year now.

Chris: And what of you, Shirley, how did you end up here from that background that is very different from software development?

Shirley: Yeah. I went to a boot camp. It's called Hackbright Academy, it's an all female boot camp in San Francisco. So, I left Korea about September, a year and a half ago and I moved back to San Francisco. And I realized that the market here is totally different. Long story short, I decided that I would try software engineering and taught myself how to code with free online resources before just out of curiosity. So I spent three months, it was really a intensive course. All from 9AM sometimes until midnight, and I demoed my app at graduation. And my current manager, and our director actually saw my demo and they had a booth at our graduation demo day. And so I applied and here I am.

Chris: Yeah. I think there are quite a few connections between Hackbright and Heroku. There's some people that have, some employees here that have taught at Hackbright and a few people that have attended Hackbright or maybe both.

Chris: I think one question many people have that are thinking about doing something like that, this question's for either of you, it sounds scary, like how do you make the decision to stop working?

Eric: Commit?

Chris: Yeah, how do you commit? Make a decision to commit to stop working or keep working but also go sign up for a boot camp or somehow learn the skills you need to make a career change like that? I would imagine many people are like, oh, this looks interesting, but I'm kind of stuck in this other path and I have no idea how to jump over to the software development path, because there's so many things that could go wrong getting there.

Shirley: Yeah. For me, it was, when I was in Korea, it was a really nice life, it was "alternative." But I kind of realized that, because I went to school, grad school for international relations, because I wanted to change the world. So my calling wasn't finding pretty girls for car shows. And then I moved back to the city and I was trying to look for business marketing jobs, but it's so competitive here. And I was also getting really sick of that industry where you kind of have to pretend to like people and to put on this front and have to be on all the time and have to network all the time.

Shirley: And so I thought, oh, I'll try software engineering. I'm not stupid. I don't think I'm stupid. It can't be that hard. And honestly, a lot of people ask me about this and they say like, oh, how did you make the leap? How did you decide to do it? It seems so hard. And it might not be for everyone but at least for me, it was much easier than I thought it was.

Shirley: Also, it's, I guess if you have children and you have a lot of commitments, it's harder to take that time off. But it took me three months to go through the boot camp and I got the job offer like a month and a half after I graduated. So overall, it was a five month time. And five months in the grand scheme of your life, making a career change isn't that much.

Chris: That's pretty good. Yeah. You did not come through Futureforce or as an intern to Salesforce?

Shirley: No.

Chris: Okay.

Eric: Yeah, because I don't really have an interesting story there because it's very vanilla of a path for me since I have nothing else to compare this to. This is my first full time career right out of university, right out of college. I will say it is very different.

Chris: What do you mean by very different? Programming work is different than programming in school?

Eric: Yeah, with so many regards like adjusting to the work life balance in general, you know, adjusting to a full time 40 hour work week, maintaining like wellness. This is like outside of programming.

Chris: Yeah. It's like you've become an, this is like adulting.

Eric: Adulting. Exactly. Right. And then yeah, in respect to like programming and like web, like the cloud, all these like different standards you have to adhere to, maybe coding styles, maybe like process of opening up PRs, testing in a staging environment.

Chris: Yeah. Did you ever do any of that stuff in school?

Eric: No, they don't teach us that in school. They're just like, oh, do this project-

Chris: Bubble sort.

Eric: Yeah. To like solve this one very particular like password cracking thing or like bubble sort, heap sort. But the goal of school and academia right now I guess is to give you this foundation of like learning like maybe object oriented design or just standard CS fundamentals, and then you go get on the ground and start running with it. So with learning Rails because Salesforce core was all Java, I got here and I started like learning Rails and like, oh, I've never done Ruby before. So it came I guess pretty easily. I'm still in the process of learning, I've got a lot to learn. I acknowledge that.

Chris: So in school, you did Java and kind of object oriented design?

Eric: Yeah, yeah. You take like data structures, OS, maybe. But I find that still very little of it applies to like our job and like this day to day, Heroku platform. Like, it's very different.

Chris: For sure. I remember my, I maybe have a similar or non-standard background. I minored in computer science but I majored in economics also and I ended up as like a data analyst. I was a data monkey, you could say, like a spreadsheet monkey. And then got tired of that and wanted to kind of go back towards technology and programming. And so, I consider myself mostly self taught. Like I also did Java in school but it was just a minor at a liberal arts college. It wasn't like a big university with a really strong computer science program.

Eric: Where was it?

Chris: It was Colby College in the middle of Maine, northeast corner of the US. But I did have one summer internship in New York City actually working at a startup. My experience was similar where I had the same feeling as you did in that like, everything I was doing there was so different from what I had done in school. Like I had to learn, CVS was the source control system we were they were using and had to learn like about Makefiles and how to like write my own Makefiles, which is never something I learned in school. They made me build an email delivery system so that we could send out lots of, so we could spam lots of people effectively.

Eric: That was before MailChimp?

Chris: Yeah. This was like 2000 I think. 99, 2000, 2001, something like that. And actually, like the one thing I remember the most, which is you kind of brought up Eric was the ability to focus on programming for eight hours a day. I didn't have to ever do that in college. It was like, oh, I'll just do an hour or two of homework or I have a class for an hour. But doing it for eight hours a day like stretched my brain in many ways that I didn't expect. I kind of had to like strengthen myself. I don't know, have either of you run into that? Either the change yeah, from a university, kind of, you're doing lots of different classes in addition to computer science, or the change from boot camp world learning. Maybe that's more like accurate or more similar to what work life is because it's so intense for those months that you're at the boot camp.

Shirley: I was going to say hearing what Eric said that, like, I think everyone who comes out of boot camp and maybe other people too have imposter syndrome. And for like the first six months, I was like, are they going to fire me, are they're going to realize they made a mistake. But then I realized that like people who went to conventional schools didn't really learn the things that I was learning either. So I was thinking I was an idiot because I come in and people were throwing things around like Kubernetes, and I didn't know how to use Git, I barely knew how to use GitHub.

Shirley: And then I realized, like, other people didn't really know these things either. But I think the advantage that going to a traditional school does give you is that, like now I'm taking CS classes and I'm learning about pointers and things like that that I don't use in Ruby, but are really helpful if I read Go or if people are talking about things, or if people are talking about technical topics that relate to how the hardware works, now I kind of understand what they're talking about. But when I was coming straight out of boot camp, that made no sense to me. And so I think that's what education is helpful for, that you at least have that foundation to understand these concepts.

Chris: So did you say you are taking some CS classes now?

Shirley: Yeah. Online.

Chris: Yeah. Okay. Did you feel like you wanted to like fill in some gaps or like layer on a deeper understanding? Is that why you chose to do those or did Salesforce say we'll pay for these and do it?

Shirley: Yeah. Salesforce is paying for it, otherwise, I don't know if I would. But also, I'm just like, because I was, I had an advanced degree in my field and I had a lot of experience in my field, and I definitely felt a chip on my shoulder coming into this one. And feeling kind of like, well, I don't really know anything, I'm an amateur. And I didn't go to school, I didn't get a degree, I went through a boot camp. So I wanted to take more classes and get something more legitimate so I can feel better.

Chris: Yep.

Shirley: Yeah.

Chris: Yeah, that makes sense. I'm sure everyone, lots of people have told you this but even senior engineers have imposter syndrome too. It persists. And it's probably not just our industry too. Like I'm sure it persists in other kind of like knowledge worker industries or knowledge worker jobs too.

Shirley: What I appreciate, though, is that people, at least that I've met in this industry, are very open about imposter syndrome and very supportive.

Eric: Especially at Heroku.

Shirley: Yeah, definitely.

Chris: That's good. That's good to hear.

Eric: I mean, imposter syndrome is always real. There's all these acronyms being thrown around in meetings like, what is OSM, OSB, like go do this. So I have to like always like sit on, especially when I first got here, I was always googling stuff, what the hell does this mean?

Shirley: Stack Overflow.

Chris: So do you feel comfortable asking what you might think are stupid questions?

Eric: Yeah. Especially when you first, I think we're still, it's still pretty safe to say we're junior engineers. I don't know if you guys feel that term is like demeaning, but I don't really care. I think it's overstated, like the whole like cliche of asking stupid questions. And like I just always ask. Like, it doesn't matter, just like, I'm willing to suck up my ego and just accept the fact that I do not know. And going back to what you said, Chris, like, senior engineers also don't know sometimes, right? There's just so much knowledge and so much breadth to know in this industry that it's like okay to not know sometimes, and maybe we'll figure it out together, right?

Chris: Yeah. Yeah. That's great. So what has been your, for both of you, what has been your experience in the past with mentoring and how, like, how do you go out and find mentors? How do you decide that you need one or could benefit from one? Because even, many people are probably hesitant to say like, I want a mentor, I want someone to help me grow and admit that they don't know everything.

Eric: Yeah, that's a great question because I feel like right now, so, if we go back to the internship, there's an assigned mentor. They assign you one person, he's local, he or she is in the office. And that is your point of contact for everything. Your technical, like, has a say in your project, is going to work with you, you can tap them on the shoulder. Once I got to Heroku, it was like everyone's remote now on your team.

Chris: Were you an intern at Heroku also?

Eric: No, no, no, just Salesforce.

Chris: Okay.

Eric: Yeah.

Chris: So then you became a full time like non-intern...

Eric: ... after that.

Chris: Gotcha. And then yeah, so many people are remote. So that changes everything, right?

Eric: Right. So it became really hard to find a designated mentor, and I would find that it would just mostly happen through like pairing sessions from like the team. And whoever was willing and open to share, I would just approach them. So it was kind of more evolved, it evolved into more of this ad hoc style, like, you know, hey, like, I have this I'm working on, do you want to see this? And then if I ask questions, if it's something I'm curious about, for example, like a database maintenance, we were just running, I was like, oh, I'm super curious. Like, can I watch you do that, right?

Eric: And then just building like these organic relationships I feel like is what mentoring should be. And like, I feel like it should be more responsibility on the mentee to approach the mentor. I want to seek out your mentorship.

Shirley: That's something that I actually really admire about you, Eric, and that I've like tried to pick up too is that he's really good at just going up to people and getting to know them and talking to them organically. I think that's also really important when it comes to mentorship because a lot of people go up to important successful people and then they're a nervous wreck or they're really awkward about it, or they're really demanding, like, mentor me.

Chris: Or they just don't at all because they're intimidated by that person.

Eric: Right.

Chris: Right.

Eric: Yeah, I think it's important to just-

Chris: Or feel like they'll be wasting their time.

Eric: Yeah. Like, the empathy part is like really understated. Just like, be a human being, get to know them. What are their interests? What do they like to do?

Shirley: If you are invisible to them in the first place and you say the wrong thing and you make a fool of yourself, then you're still invisible to them. It's not like you lost anything.

Chris: Yeah, right.

Eric: And that whole like awkwardness especially in like software engineering, I feel like if you take the first step in like making, getting over that hump, you introduce yourself to the other person, like it becomes smooth sailing after that. You just take initiative take the first jump over the first hurdle.

Chris: Yeah. That's cool. I do actually remember that with meeting you myself also. And how like I would just be walking down the hallway in the previous office and everyone's like heads down like doesn't talk to me as I walk through there just visiting the office and you say hi. Like one of the few people that makes the difference, or makes the effort to say hi.

Eric: My seat there was so weird. It was like behind a pillar. It was like the end of the aisle so everyone would walk out to the bathroom and then I was like, should I say hi. I'm always like trying to wave and be friendly.

Chris: You knew the status of everybody, coming and going.

Eric: Who goes on the most bathroom breaks here?

Chris: What about, go ahead, Shirley.

Shirley: He would tell me about things in the office and like, how did you find out about this? And he's like, I just talk to people.

Chris: Did you have any mentor like experiences at Hackbright or is that a, is it informal, is it more formalized through there? How did that work?

Shirley: Yeah, we had assigned mentors at Hackbright, so I had two of them. One of them, Mark, he's a security engineer, he works at Google now. Shout out, please listen to this. He was incredibly helpful and I think we have more of a friendship as well as a mentorship. And he'd done this before so he had a plan and he had kind of knew what to do. And he would ask me questions to figure out what I wanted to do. And then I would come, every week, I would come to him with questions of like, this is a technical thing that I need help on and we walk through that. Or some weeks we'd compare agendas. And he'll say like, well, these are the things I really want to cover. And I say, these are the things that I really want to cover. And then we kind of mix and match and have a meeting that way. So it could be ad hoc or structured.

Chris: Yeah. So were they, it sounds like they were both sometimes technical or sometimes they could be about how to find a job or what kind of like software development job do I want or should I look for. Is that true?

Shirley: Yeah.

Chris: Yeah? Okay.

Shirley: And mentors also provide a lot of valuable networking help because by virtue of being in industry longer, they know more people.

Chris: That's great. Did they help you? Did your mentors, oh no, you said that someone saw your project. That's how Heroku found you.

Shirley: Naman actually referred me because I just kept bugging him because Hackbright did a site visit. And I kept talking to him and asking him questions. And towards the end, he was like, do you want a referral? I'm like, yes. Please.

Eric: [inaudible 00:19:06]

Chris: I think that's the way to do it. You got to be, as long as you're friendly, just be persistent. Most people aren't like, you know, even with email, I'm like, most people don't, are not replying to me because they don't want to reply to me, because they're just busy or they forgot or like that email got buried or they checked it when they were lying in bed in the morning and forgot to mark it as unread or something like that. So, I don't know, I find that most of the time people appreciate the like, a follow up or two. So yeah, it's good, a good skill to have.

Shirley: And it's a lot harder to ignore someone after you've talked to them and looked them in the eye.

Chris: Right. Totally.

Shirley: My mentor at Heroku, we also get assigned a trail guide when we join Heroku. And that was actually an interesting experience because I had always adopted the strategy of being really casual, getting to know them as a person. But after a few meetings of catching up, my mentor seemed less engaged and less happy to talk to me. And then so that's when I realized I had to be more cognizant of her time and mine as well. And it wasn't, it's nice to be friends with your mentor, but sometimes it's not a good use of time to just chit chat.

Chris: Yeah.

Shirley: So I started thinking about like what she wanted to talk about and why she volunteered to be a mentor and what maybe she hoped to get out of it. And then I just asked her, actually, I think I remember in one meeting, I was just like, all right, well, how, like, what would you rather talk about?

Chris: Yeah. How do we make this time more useful for both of us.

Shirley: Yeah. And I could tell that it helped her let her guard down a bit. And she's like, thank you for asking. I prefer to talk about technical things and give you technical advice, etc. And then after that, I think our personal relationship and mentorship relationship improved.

Chris: Yeah. I mean, you can be, it's great to be assigned a mentor, but there's kind of like, well, how do you how do you develop this relationship and what are the roles and responsibilities for each person and what do you do? There's like day one when you first meet and then there's day two and then there's like month two and like kind of know each other, but does it just fizzle out or do you keep working with each other?

Eric: See, that's why I believe in like the organic relationship because when you're like paired with someone, you might not have that much in common. And there's a lot to like consider when seeking out a mentor, which is like personality, skills that you're looking to advance, maybe some people are more interested in like something really obscure, like getting better at code refactoring, understanding databases. And some people are experts in all of these deep technical areas.

Eric: So like, you know, that in conjunction with like personality, that really like, I had an onboarding buddy too. He was great. We always shot the [bleep], which was like, super casual, we would have an hour long conversation about electronic music. But he was on a different team, and the reality of that was, he was there to provide me like general logistic guidance. Maybe like general questions about the platform, not like a super deep technical mentor. That I had to look elsewhere. But, yeah, and these relationships are all valuable to keep around.

Eric: But I wanted to go back to your point on I think like respecting their time. We work, Heroku is like largely remote and across a like plethora of time zones. So I try to like be cognizant of that and like, I was getting up like, had 7:30 meetings for a little while.

Chris: Like with Europe or the UK or something like that?

Eric: Yeah. With the East Coast. And yeah, I would just have to like prep my notes in advance to like know this is what I got to talk about tomorrow morning.

Chris: Because your brain would not be awake to remember that?

Eric: Yeah. It was so hard because I had to like, I would get in the office like 10 minutes ish before stand up and just to like try to wake up and like fill my brain with like what I needed to say and I still like half asleep. Because I'm not a morning person. But yeah, like, you know, just being like communicative of like, do you have maybe time after lunch, 30 minutes to like talk about my PR.

Chris: Do you think mentors or have mentors helped you with things like, at Heroku, like your trail buddies, is that what it's called?

Shirley: Trail guide.

Chris: Trail guide. Have they helped you with things like, either formerly the trail guide or informally people helped you with like which team you move to or squad you move to or like which features or products you're working on? How do you, because, you know, there's going to be Kind engineering management from the top down, so it's like, we need to build these things or product management says we need to build these things and then there's kind of organization stuff that happens. But, you know, we're not just like cogs or chess pieces that you can just move around and put anywhere. You have likes and desires and things you want to learn and get better at and things you are really good at and could just do really well on.

Chris: So, how do you navigate or how do you learn to navigate that with a mentor? Because when I was in my career, I feel like that took me years to learn and I'm still learning it. I mean, everyone's still kind of learning it but no one really helped me with that. I just kind of had to figure it out in different places. Have mentors helped you with those things?

Shirley: Yeah, my mentor was very good at this. Right off the bat, after the ice was broken, she was really forward and open about how willing she was to help me navigate the politics and the landscape of the company. And I was on this one squad. So we call like project team squads here at Heroku that ended up getting disbanded and I was trying to figure out where I wanted to go next. My manager also does a really good job of asking me like who do I want to work with, who do I want to pair with. That I think factored into how I ended up here as well. And also my mentor went through every single project that our team was working on and kind of broke down like what they were working on, how my skill set might fit, and how what comes out of it might fit into my growth plan. So, yeah.

Eric: So I actually just changed squads or teams within Heroku and I'm now on Shirley's team, web services. I don't know if I told you this, Chris.

Chris: I don't think you did.

Eric: Long story short, I think going back to your question, I think it's important to have that conversation with your manager. He is also effectively a mentor to you because like you're supposed to voice your concerns and he's supposed to help you navigate you know what you want to do, company politics, company structure, all of those things. So I like, and I've mentioned to you both before that I've always been more interested in like the customer facing side of things and like wanting to like work with customers and like getting the other perspective.

Eric: So, I voice that all the way from my manager to also my director, and all of a sudden, on a Friday like afternoon, my director taps me on the shoulder and he was like, hey, there's a new like opportunity with like web services for the add on, like integration engineering role because the previous person had left. And they're looking for someone to fill the role, someone to pass on the knowledge to. So that like hit me like a truck out of the blue and I was like, I had no idea like how to react. I was like, this sounds really awesome and it sounds like dope. Like I for sure want to do this, but like, it's like, I don't know if like, you know, I had just got here, I'm still pretty junior, I had just started to get my bearings on my current team Lifecycle. And then I just decided to take a leap of faith and do it.

Chris: Was this your first, was Lifecycle like the team that you were on from the start of working Heroku? So this was like your first kind of change of team or subject matter or ownership area.

Eric: Yeah. The way I thought about that was, opportunity doesn't come like knocking like every day. So like, when presented with a chance, like I would take it and then if I don't like it, worse comes to worse, I can still go back, it's all right. Bridges aren't burned. And navigating the whole like, you know, this landscape of the structure as to what you want to do, like, I have no idea. I don't have the, I have like a super vague idea of what I actually want career goal wise. But I know like what I value and I know like my strengths.

Eric: So it's important to I think fall back on those two things, and I voice them to like my team, to my managers, to my mentors, whoever it may be. So that when there's a good fit, like they thought of me. So I thought that was really cool.

Chris: Yeah, makes sense. It sounds like Shirley, you had some part in this.

Shirley: Yeah. I just want to say, I think especially at Heroku because we have such an open culture, everyone talks to each other, I had a one on one with Gallagher, the other person on his team, and he was talking about how he wanted, he thought that it would be good to have someone else in the role because he was the only one there. And I was like, well, Eric on Lifecycle is looking for a more customer facing position. And then I think I might have mentioned it to Simon too. And everyone talks to each other.

Chris: You started the, like, you knocked over one domino and it kind of like started-

Shirley: I like to take responsibility for this.

Chris: That's good. You've got management written all over you.

Eric: Game of Thrones.

Shirley: That is one of my goals.

Chris: Did you just say that's one of your goals?

Shirley: Yeah.

Chris: Okay. Has mentorship helped you think about that and like do things that will help you kind of become an engineering manager or leader?

Shirley: Yeah. To tie a bunch of things back together too that you have to like manage your mentor because it was like, I never revealed that I was interested in management at all and the mentorship didn't go, the mentorship was-

Eric: Wait, as in you as a mentee managing the mentor?

Shirley: A bit.

Chris: I mean, I think that applies everywhere. Like there's always some aspect of like upward management even to your manager.

Eric: You guys are talking about like the organizational aspect of it, like, the time on the calendar or like-

Shirley: Directing the conversation and the relationship.

Chris: Yeah. Like setting the agenda for what you want to talk about in meetings. Not just being, you could be and sometimes it's completely fine to be just passive and be fully like managed by your manager and just do your job and get your work done. But if you have a longer term plan or some like very clear goal you're aiming at it, it can be helpful to like, like you said earlier, have like the two agendas of the two people and figure out where they overlap.

Eric: Yeah.

Shirley: As soon as I started telling people like, right now I'm going to school and taking classes for security, but my long term goal is management, as soon as I started telling people that, people became much more, they were always willing to help me and willing to mentor me before but they became much more proactive about it, and they knew exactly which resources to give me and what advice and what to tell me what to say because I gave them a direction.

Eric: Like concrete, "This is what I'm interested in."

Shirley: This is how to mentor me, instead of being like, I don't know what I'm doing, help me.

Chris: Yeah, that's tough. Like, you always want to, when someone says that, like help me, like, generally, you want to help them but if there's no like kind of guidance or push or even like fuzzy picture of what they want help with or to achieve, then it's really hard for that mentor or manager or coach and whatever you call it.

Eric: Feedback is like one thing I've also tried to like get better at, like asking for, and like, just in general, not like soft skills, but like technically like, hey, like, what do I need to be doing more of? What should I like improve on? What should I be doing less of? But I find it like, it's hard. When you leave it like open-ended, people are generally going to be like, oh, I think you're doing fine.

Chris: Right.

Eric: Right. But it's more like effective when you think, when you come up with like, I think I could use more help with this or I think I could be doing like, maybe my PR is better, I think I ask for help too much. Is that true? And then that gives them something to work with.

Shirley: Yeah. That's also one of the best pieces of advice that my Heroku trail guide and other people on my team have given me about that is, like for promotion specifically, you can't just say like, how am I doing, what do I need to work on? You have to say like, I'm hoping to get to this point within this timeline. What are the, these are the goals that I am hoping to meet, or like, help me figure out what goals I need to meet and come up with a plan. And then people are more easy, people are easier facilitated to help you reach your goals.

Eric: Yeah.

Chris: Okay. So here's a question. If someone comes to you and says they're not in software development at all right now, how do I get started? What would you say to them? What's like one or two pieces of advice you would give them?

Eric: I would say like, obviously, there's a ton of resources out online but the key part is motivating yourself and like following through and like not getting discouraged. I think that is the key. You're obviously like not going to know everything. Just take advantage of what's out there and maybe like set up like a schedule for yourself and time blocks to go in, to learn like a programming language or a framework, whatever it is that you're trying to do. And yeah, like, don't get frustrated and just try to like churn through the problems and think about them.

Chris: Yeah. Okay. Shirley?

Shirley: There's a lot of resources out there like,, Not a product advertisement but those are some really good resources. And there's a five year coding school that I checked out that I almost went to but I wanted to do it faster called E'cole 41, E'cole 31. If you just Google it, it's a school from France that will teach you software engineering in five years and it's free. And there is obviously boot camps that you can pay for. My thing with boot camps though is that like, the market is so saturated and there are so many boot camps out there today that you can't just go to anyone. So it's important to network with people who've been through it and to talk to them.

Shirley: And I mentioned before that I got my job in five months. Some people have taken a year or more. And I think that's a more realistic timeline to have. But like Eric said, and like, if you're one of the rare people who are incredibly self motivated, you can probably teach yourself. But I think I'm not that way and the majority of people aren't. If you are determined to make this change, then you have to go through some sort of organized education.

Chris: Yeah. So reach out. So it sounds like try to be scheduled and like organized for yourself, but also, don't do it all yourself. Find resources, whether it's like freeCodeCamp or other humans to mentor help you or boot camps.

Chris: Cool. Thanks for joining and chatting about your experience getting into the career of software development, Eric and Shirley.

Shirley: Thanks Chris.

Eric: Thank you, Chris. Yeah, appreciate it.

About code[ish]

A podcast brought to you by the developer advocate team at Heroku, exploring code, technology, tools, tips, and the life of the developer.

Hosted by


Chris Castle

Director, Developer Advocacy, Heroku

Chris thrives on simplicity and helping others. He writes code, prototypes hardware, and smiles at strangers, helping developers build more and better

With guests


Shirley Xiaolin Xu

Software Engineer, Heroku

She traded closing deals in heels for the command line interface.


Eric Chen

Integration Engineer, Heroku

Eric is a junior software developer at Heroku on the Ecosystem Team. He is passionate about learning, collaboration and fitness.

More episodes from Code[ish]