Learning how to code while working in Japan

Learning how to code while working in Japan

How does Japanese on-the-job training for programmers work? We talked to Linus, who started coding in his last few years at university and is now working at a Japanese IT company in his second year. He’s proof that you don’t need a computer science degree to work in IT!

Linus’s Profile

Name: Linus (28)
Country: Sweden
Majors: Intercultural Communication
Industry: IT/Web
Japanese Level: N1
Work status: New graduate
Job hunt: 10 job fairs, ~50 applications, 1 job offer

Portrait shot of Linus.

Florian: First, just tell me a bit about yourself. Where you come from, what you do right now?

Linus: I’m Linus, I’m 28 years old and from a small countryside town in Sweden. I came to Japan for the first time after finishing high school. I studied at a Japanese language school for one year and a half and then went back to Sweden. I went to university there for a short period of time but ended up quitting and coming back to Japan in 2015 to go to Rikkyo University. Not a semester abroad or something … the regular, 4-year course. My major was Intercultural Communication. In my last year of university, I did the typical Japanese job hunt and now I’m working here in Tokyo.

F: What did you study at university in Sweden?

L: Space engineering. It was difficult, really heavy on math, but that wasn’t what made me quit. I just realized that studying space wasn’t for me.

F: It wasn’t as cool as you had expected it to be? (laughs)

L: Space is cool, but studying it is … not as interesting, at least to me. (laughs) It’s all just numbers…

Coming to Japan

F: What motivated you to come to Japan, both for the first time and later for university?

L: I’ve always had a big interest in languages and wanted to experience a different culture. Also, I really liked Dragon Ball when I was a kid … anime and manga are a big part of why I became interested in Japan.

F: And now you have a developer job, right?

L: Yes. I started with simple coding, and then after five months I moved up and did external design for the next project. For that project I designed the application itself, writing documentation like system requirements and functional requirements. And now I’m back to coding again.

Linus during the interview.

The job hunt

F: You said that you did the traditional Japanese job hunt. How was that for you? When did you start searching, where did you find your company?

L: I started in my third year, during the summer break. Around that time, job search seminars started popping up at my university. There were also on-campus job fairs. Most Japanese students start their job hunt around that time, so I went along with it and looked for internships and companies I was interested in.

F: How many job fairs did you go to?

L: Oof… I have no idea. A lot! More than 10, I think. If I remember right, five or six of them were aimed at foreigners, usually smaller ones. But I also went to job fairs aimed at regular Japanese students.

F: What was the job fair where you found the company that you’re working at right now?

L: I found my current company at an IT job fair in Yurakucho. At that point, I had already decided which industries I wanted to go for – I was mainly looking for jobs in finance and IT. In the beginning, I leaned towards finance, but later on, I switched to IT. It was at that point when I met my company at the job fair.

F: How many companies did you apply to in total?

L: I heard that 30 was a fairly common number, so that’s what I aimed for. I think I maybe went to about 40 – 50 applications, I can’t remember exactly…

F: And how many job offers did you get in the end?

L: One! (laughs)

F: So you just went with the first one you got.

L: Yeah. I was really happy with it.

Linus during the interview.

F: You decided to search for jobs in finance and IT. Why these two?

L: I looked at finance because I’ve been kind of interested in stocks and stuff. In Sweden, I used to do trust funds, just a little bit of investment. Well, and I also heard that pay in the sector was really good, so … that was one of the bigger reasons. After searching for a while though, I realized that it was kind of risky to just focus on one sector. I picked IT as my second target because I’ve always been interested in the internet and computers, coding… I used to be a huge gamer, that’s where that interest originally came from.

F: … you mean you’re not anymore? (laughs)

L: No … well, I kind of still am, but it’s “an addict off his drugs” kind of situation.

F: I see! (laughs) So halfway through your job search, you decided to broaden your scope a bit. But you didn’t actually study finance or coding at university, it was just something you did in your free time.

L: Around the time when I started my job hunt, I started to think that it would be nice to have some hard skills. Some people around me were taking tests and getting certifications, so I thought “why not learn how to code” because, well … I had always wanted to try it out anyway.

F: I actually had similar thoughts in my last few years of university (laughs) But I didn’t end up going through with it. When you have a background in something like cultural studies, one thing that’s appealing about jobs in Japan is that you can find one in a pretty specific field even if you don’t have a lot of experience in that area.

Daily work

F: So now you’re at your job in your second year. Just tell me a bit more about your daily work. What do you do, what kind of projects are you working on?

L: Right now, I’m mostly working with WordPress. We’re creating a bus tour application system; the front side is WordPress and the back end will be CakePHP. Now, I’m doing mostly coding and designing the front end side of the project. Previous projects have been anything between HTML/CSS and JavaScript/PHP coding. For my last project, I also used Adobe XD for wireframing and prototyping – I did a bit of UI and wrote lots of documentation.

Linus during the interview.

F: That’s a lot of stuff, especially without any previous experience! Did you have trouble with learning all those things while working at the same time?

L: Yeah, it was really difficult at times. Lately, I feel that I’ve really started to understand how programming works. You have all of these different languages, which are basically all various flavors of the same kind of thinking. When I started to get object-oriented programming, I was like “ah! everything makes sense now!”

F: You were trained on the job. How was the process? Did your superiors have a training program prepared for you?

L: I started doing programming work during the internship that I did before entering the company. First, I used a coding website where you go through tutorials on the basics of HTML, CSS, and some others. After that, they gave me a picture of a webpage and told me to copy it, without looking at the code. The next step was creating a simple copy of Twitter – a CMS where you can upload pictures and status updates, edit and delete them, those kinds of things. It was mostly in PHP.

F: Did you do all this during the internship, or did you work on some of that on your own, aside from work?

L: It was about half and half. When I officially entered the company and joined the R&D department, I started learning about other things as well – for example, how networks work, and development environments. In web coding with HTML and CSS, you don’t need to lay a lot of groundwork, but if you’re starting a project from zero, you have to set up an environment. I used Docker, but it depends on the project. That was all stuff I learned after joining R&D.

F: How long was your internship?

L: About four months.

F: That’s pretty unusual for Japanese companies. Usually what they call an internship in Japan is really short…

L: There are lots of 1-day internships. The one I did was more like a part-time job since you got paid as well.

F: How did you find it?

L: It was an optional part of my company’s hiring process. At that point, I had already decided to join the company. I was in my last year in university, and they asked me if I wanted to work and learn on-site for a bit there before officially joining.

F: So you did the internship after going through the selection process and getting your job offer?

L: Yes. It was pretty hard at times because I was doing school at the same time and was writing my thesis…

Linus during the interview.

Learning and working at the same time

F: Even with training on the job, there’s only so much you can learn while working. How about now? You’re at that point where you’re not considered a fresh graduate anymore and are transitioning into regular employee status. Do you still put in time for learning on your own?

L: Nowadays, I aim for at least 30 minutes per day. It’s a small goal, but 30 minutes can easily turn into two hours … watching videos on how concepts work in programming and just going through new software and just random stuff, whatever intrigues me. For example, the other day I downloaded Wireshark, a package sniffer. It grabs all the information that is going through a network and you can read whatever is being sent. I think it’s important to not stop looking into things you’re not yet familiar with.

F: 30 minutes every day – it doesn’t sound like much, but if you’re coming back from work, that can be a pretty high hurdle to clear. I speak from experience … even if you’re all enthusiastic about learning new things in the morning, often you come home and are just tired from work … I think it’s pretty admirable that you are keeping up with it!

L: The worst part is having to sit in front of a computer for work and then sitting in front of a computer for learning as well.

F: Ah, so maybe that’s the reason for why you don’t game as much as you used to!

L: Yeah, that might be true. (laughs)

F: Out of all the various projects that you’ve been involved in at work until now, was there any project that was especially exciting to you or that you were able to profit from yourself most…?

L: I think probably the second project we did, where I did external design, and wrote the functional requirements. Strictly speaking, I didn’t learn about programming in itself, not as in writing code, but I learned a lot about the development process because we were doing everything from writing functional and non-functional requirements to doing tests. That project made me aware of all the steps you have to go through to make sure that everything works correctly.

Linus during the interview.

Communication at the workplace & working environment

F: By the way, I didn’t ask you yet but I assume that since you went to a Japanese university, your Japanese level is pretty high?

L: It’s not perfect, but … it’s alright. I have the JLPT N1, I got that when I was at Japanese School in 2012.

F: So at work, there are no big problems regarding communication, you can just talk to everyone.

L: Yeah regular communication is no problem. I think the biggest differences between university and work were speaking keigo and using logic-focused language. In engineering and programming, you have to very explicitly and logically explain what you mean because otherwise, it will be easy for you to be misunderstood, which is really bad.

F: I assume there’s also a lot of programming jargon and specific vocabulary that you also have to learn.

L: For that it’s often the other way round. I learn the words in Japanese first and then look up the English terms later on.

F: I think it’s also beneficial in a position like one where you are right now to know English because the newest documentation is usually in English. By the way, what kind of people are you working with? Are your colleagues are mostly Japanese?

L: Because our department merged with a larger engineering department, we also have lots of Japanese people now. But when I first joined, the Japanese side was the minority. We have a lot of Koreans, a Filipino guy, people from India, and I’m from Sweden … overall, we are very diverse.

Linus during the interview.

F: I see. What are your working times? When reading about working in Japan online, you tend to encounter warnings about long hours and lots of overtime…

L: I usually come to work at 9:15, which is 15 minutes before I start, 9:30 … and then I go home at 18:10.

I think overall how long your working hours are is pretty situational and heavily depends on the company. We have pre-paid overtime here, and when I was on a really busy project, they asked me to take all my hours. But nowadays, I barely do any overtime – only when it’s really needed. Especially when it comes to programming and software development, you’re always going to have really busy periods separated by chill ones.

Plans for the future

F: OK, so now … how about your future in Japan? Do you plan on staying here long-term?

L: For now, I think I might stay here for quite a while. I’ve been thinking about going home just a little bit, because I think it’s easier to get a well-paid job at a famous IT company in Sweden. One day I might go home, but for the foreseeable future, I’m planning to stay here. I like my current environment a lot. People are nice, the food is nice, the weather is nice … and I mean, there’s so much going on in Japan.

F: What about projects that you’re interested in? Is there something that you’d like to do connected to coding?

L: Lately I’m very interested in Data Science. I’ve been studying a bit about Data Analysis but I want to go a bit more into that and maybe more into AI, so machine learning.

Linus during the interview.

Job search advice

F: Finally, do you have any advice or recommendations for people that are in the same position that you were in when you started your job search … people who are interested in programming and learning it on the job but don’t have that many skills yet?

L: I had difficulty with deciding what I wanted to do. If you have trouble with that, I’d recommend just going to career forums. There, you get information about all sorts of companies. When you get a clearer idea of what you want to do, you can go into the specifics.

For coding, there are tons of free websites where you can learn how to code. Following tutorials or making a project with someone else is also a good way to learn. And I think it’s easy to overestimate the amount of skill you need for a job. What I mean is, you don’t need a Computer Science degree to find a programming job, even just HTML and CSS can be enough. So if you’re interested in programming or development at all, just start without worrying too much about efficiency and things like that.

Linus during the interview.

F: Just getting down the basics can take you a long way.

L: Yes. Another thing that’s worth thinking about is what you want to do with programming. Depending on your goals, you’ll have to learn different things. If you want to do Data Science or statistics, for example, then R and Python are the way to go. But if you want to do web development, you absolutely have to know CSS and HTML and then you have all sorts of various backend languages.

F: I agree, having a clear purpose is important! It’s much easier to maintain motivation that way. Sadly, it looks like out time is up. Thank you for sharing your experiences!

Want to know more?

Interested in working as a programmer or developer in Japan and still have questions? Ask away in the comments! We’ll check back with Linus and give you some advice about how to prepare and find a job. If you’d like to know more about Linus’s company, have a look at our article on it over here or check out the recruitment sites (*in Japanese) directly by clicking the buttons below!

Other’s experiences

Find out how others got their jobs!
Frontend engineering in Japan, Julaya from Thailand
Working in Japan as a video creator, Joshua from Singapore
Everyday work as a web designer, Tanya from Ukraine
More job-hunting advice from your Senpai

Others also read


My love for ninjas and interest in Chinese characters (kanji) were what first made me come to Japan, as a high school student. Over ten years and many visits later, I’ve found a job here and have chosen it as my new home.