Emma Wedekind's journey to programming: from Java to React

Written by Edward Hewitt in Engineering on January 20,2020

Emma is a Software Engineer based out of Karlsruhe, Germany, currently leading a Design System at LogMeIn. She was born and raised in Upstate New York. Emma graduated from Siena College in Albany with a B.S. in Computer Science and moved to Austin, Texas, for three years where she worked as an engineer at IBM on Quantum Computing.

She enjoys all things Front-end & Design. She is heavily involved in a number of projects, including Coding Coach in, as a Frontend Masters instructor, Egghead.io instructor, a teacher at Lynda.com, and as a co-host of the Ladybug podcast with Kelly Vaughn and Ali Spittel.

We talked to Emma about her path to becoming a Front-end developer and covered everything from struggling with Java in Computer Science class to learning HTML, CSS, and JavaScript in just 3 weeks. The conversation also covered a topic that will be familiar to many developers in our audience - imposter syndrome and feeling underprepared at the start of your career.

← View other episodes

We had Emma Bostian in our Paris office in December. Interviewed in Prismic's Studio by Sadek Drobi

Two months before I started my internship they said 'we're gonna switch you to front-end'. I was like 'HTML is easy, that's fine, I'll be great'. So I showed up to work and I was horrible at my job. I quickly realized that front-end development is a lot more than just writing HTML and CSS.

Sadek:

So we're here again at Prismic Studio. Today we're here with Emma. I want to remind you that we're doing these videos about different subjects, about web technology, web programming, CSS, Design Systems. All these kinds of topics, we get a lot of interesting people. So make sure you check out the videos and subscribe to the channel for new ones. So, Emma, thank you for coming. It's great to have you here. First I would like to maybe start with introducing who you are, how did you start with programming, all that journey.

Emma:

Sure. Yeah, so, my name is Emma Wedekind, I am a software engineer at LogMeIn in Germany. So, I am from Upstate New York originally, born and raised there. And then my journey into programming is interesting because I never wanted to get into programming. My dad is an architect at IBM, so he was very much into back-end programming. My mom is a senior designer at IBM, and so I kind of grew up in the tech ecosphere. I'm a third-generation IBM-er, so it's kind of strange to think about that. But yeah, as a result, I never wanted to get into programming. Growing up, when your parents say 'oh, you should do this', you're like 'I am definitely not gonna do that.' It's one of those situations. I was actually a biology major in college in Albany, New York. I realized I was really terrible at it. So, I switched to actuarial science, which is a lot of statistics, and I took an Intro to Programming course or Intro to Computer Science, I just remember learning about binary and hexadecimal and octal and I was like this is really cool. So I ended up switching my major over to computer science. I graduated in 2015 and I moved down to Austin, Texas to work at IBM. I was there for I think three years. I got to work on some really cool projects like I got to work on quantum computing, which is the neatest project ever. It's the one I talk about the most because it's possibly the coolest, but I did a lot of other things while I was there.

Emma and Sadek at Prismic Studio

Emma and Sadek at Prismic Studio

Sadek:

Wow, I don't know now which topic to talk about, you just spread so many interesting topics. So your father is a software architect?

Emma:

Yes. He is, yeah. He's still at IBM. It makes dinner conversations interesting because he keeps trying to pull me back over into the back-end, and I'm just not about it. Don't want to go back there, I like front-end.

During my internship, my dad's previous manager was visiting from Texas and she just came to see me and said 'would you wanna move to Texas?' I was like 'no, but let's do it'. So I moved down to Texas, I was gonna be hired as a back-end developer.

Sadek:

But now even front is becoming front-end and back-end, you know, talking about the 'back-end of the front-end', 'front-end of the back-end'. It all mashes together. You'll end up there.

Emma:

Yeah, eh. I'm not sure, we'll see.

Sadek:

So you started working at IBM, did you work as a front-end developer there?

Emma:

During my senior year of college, I did an internship where I automated the installation of a WebSphere Application Server on z/OS with Python. It's a lot. I know. I had to memorize that for my LinkedIn profile, I don't know what any of it means. So, I did an internship for six months. I tried to use WebSphere. I still couldn't tell you what it does. During my internship, my dad's previous manager was visiting from Texas and she just came to see me and said 'would you wanna move to Texas?' And I was like 'no, but let's do it'. So I moved down to Texas, I was gonna be hired as a back-end developer 'cause I did Java all throughout college and assembly language and database, and so I was like 'yeah, back-end, sounds great'. Then two months before I started they said 'we're gonna switch you to front-end'. I was like 'HTML is easy, that's fine, I'll be great'. So I showed up to work and I was horrible at my job. I quickly realized that front-end development is a lot more than just writing HTML and CSS.

People don't recognize the fact that there is math in almost everything we do, including design, which is really hard. They see front-end and they think about it 'oh, there's nothing mathematical or super technical, as much as the back-end' and that's a common mistake.

Sadek:

I mean, there's this kind of always discussion about whether back-end is harder or front-end is harder. I'm a back-end person. But I know it's so complex to do front-end, the complexity is way higher I think.

Emma:

Yeah, I feel like there's a lot more tooling. They're different. I don't like to compare and say one is harder than the other because they're so much more different.

Sadek:

Front-end has a lot of unpredictable things that could happen. You know, browsers, and network, and all these kinds of things. I mean, back-end has also a lot these kinds of things, but less unpredictability I feel. Like CSS, come on, it's so complex.

Emma:

I love CSS, but I know most people don't. It's complex because there's a lot rooted in math, and people don't understand. For instance, specificity is a topic that you should understand if you're gonna write styling. But people don't recognize the fact that there is math in almost everything we do, including design, which is really hard. They just take it for granted and they see front-end and they think about it 'oh, there's nothing mathematical or super technical, as much as the back-end' and that's a common mistake.

Sadek:

That's another topic that we should absolutely talk about. This would last forever, you know. So what was the first programming language you started with? Java?

Emma:

Java yes! Well, technically Alice, but that was a drag and drop program, so yeah, I used Java.

Sadek:

You love Java I suppose.

Emma:

I hate Java, I hate it. Probably because I was really bad at it. I think your teachers have a big impact on your success, and I think that the teaching style that I was provided with didn't match with my learning style necessarily, for some of my teachers. So my first Intro to Programming class was with Java, and it was with a professor who was brilliant, but I did not click with his teaching style, so I struggled a lot in Java.

Sadek:

I will try to be bolder than that, I guess it's Java. I mean I've done a lot of Java, and I know maybe people will hate me for saying that, but Java is evolving a lot now. It was this language that was not evolving at all. It was like it didn't have functions, it didn't have anything and you had to define everything in classes, you say the variable name, the variable type equals the variable new, and it's so verbose.

Emma:

It's really verbose, and you have to understand object-oriented programming really well, which I did not. Trying to program it in Eclipse, which is a massively confusing IDE, was just horrifying for me. I think our senior project was coding Ticket to Ride. Which, I still can't play that game. Great game, can't play it, I have a lot of negative feelings about that.

Sadek:

I fully understand. So now, you started with Java, and then you went into writing HTML?

Emma:

No, I did assembly language, so I programmed in MIPS. We did a lot of assembly programming. I did some database with MySQL, and then.

Sadek:

Why Java then? Why not starting with writing assembly directly?

Emma:

That's just the language we did everything with. I didn't go to a technical school, I went to a liberal arts school. So their computer science program was pretty small. I think Java was just the language that they chose. They didn't teach Python at all, or they didn't teach C or anything like that. It was just Java. So that was used throughout my algorithms courses, my programming courses, my data structures courses. Then when I found out I was gonna be working as a front-end developer I took Front-end Development (or Web Development) and that was not as helpful as I had hoped it would have been. We learned a week of HTML, a week of CSS, a week of JavaScript. Then we learned Bootstrap. They didn't touch anything in regards to JavaScript frameworks. I had no idea what a JavaScript framework was until I showed up to work on the first day and they were like 'we're using Dojo', and I'm like 'what is that? I have no idea' so it was really hard.

I think graduating from a computer science degree, I had a big ego, and I was like 'I know everything, I deserve this job'. Then I showed up and it was a reality check. Now I'm fighting imposter syndrome

Sadek:

That touches also the topic of: when you join a new job and you think you know what programming is, then people start talking about a series of names of different technologies: 'Oh, we use this with that and that' and you understand that you know none of that.

Emma:

It destroys your ego pretty quickly. I think graduating from a computer science degree, I had a big ego, and I was like 'I know everything, I deserve this job'. Then I showed up and it was a reality check. Now I'm fighting imposter syndrome, I think we all are to a certain extent. Yeah, I would say as a junior developer I had a big ego, and it was quickly beaten down.

Sadek:

For people that didn't have that ego, it's kind of overwhelming as well when you get into it. There's so much to learn and you get scared, right? Because you see everyone understanding that except you. Is it you, what is the problem exactly? Why are you not on the same page as them?

Emma:

Yeah, absolutely, and I think also being the only female front-end developer was really hard because I thought it was just me and I just wasn't cut out, and not having someone similar to you on your team that you can go to for support or for help was really difficult.

Sadek:

Let's dig deeper into these topics in the next video.

Emma:

Yeah, sounds good.

Sadek:

Thanks, Emma.

Edward Hewitt

Content Strategist. If the devs have their way, Edward will one day be replaced by a Prismic feature.