After 4 months of internship in Slid Team…

Slid
Slid
Published in
8 min readDec 31, 2021

Hello! I’m Haley, who conducted internships with SLID backend and DevOps Hacker. I’m going to reflect on what kind of work I’ve been doing over the past four months.

1. How did I join SLID

In fact, it is close to coincidence that I met CEO Park Jung-hyun. I hosted a hackathon at the IT Startup Club, and by chance, our group had a chance to talk to Junghyun, who participated as a hackathon mentor. Listening to the story, I felt that Junghyun had experienced a very wide world, and I was curious about the business that Junghyun was doing.

A week later, Junghyun posted a developer recruitment notice, and I suggested that I could participate as a part-time intern with the desire to talk. Junghyun was recruiting DevOps personnel to focus on CI/CD at the time, and I was more courageous because I just started to be interested in the cloud field.

- Coffee Chat

It was a time to have a simple talk with Junghyun with coffee. It just seemed to confirm that my recent field of interest was the cloud part and that this part matched the requirements of the company.

- Interview (feat. 4 hours + English)

Since then, an interview has been scheduled.

  • Resume + Github

On the interview screen, I had time to enter my Github together and watch the code together. It wasn’t difficult to answer because it was what I worked on. They mainly looked very closely at how they implemented certain functions, why they used CBV (when they entered SLID, it was FBV), and what specific libraries and modules used.

  • Web development knowledge

They asked a lot of basic knowledge questions that web developers should naturally know, such as cookies, session definitions, how users access the site, http and https, Rdbms and nosql, and server side rendering. But I didn’t study at all, and I only answered what I had experienced.

  • Suggest a solution to the problem

I was asked how to implement regular payments and answered them. First of all, since I have used django’s background tasks module, I answered that I would make regular payment requests using this module, and the tail questions continued.

- How will the date be calculated? (Example: February 30th and 31st, but those who paid at this time will pay in February)

- Which field should be added to the model DB?

- If the payment doesn’t work, how are you going to track it?

But it didn’t feel like a pressure interview. It felt like we were discussing together.

- PASSED!
A few days later, the interview feedback came along with an e-mail that said it passed

2. Monthly Internship Diary

- September

  • ERD, AWS architecture diagram

It was the first task I took after joining SLID. At that time, SLID did not update ERD for a long time so I drew a new ERD. In addition, while studying how AWS’ architecture is, an architecture diagram was also drawn. With the help of Adriel, the backend Hacker part, I was able to learn the overall structure of AWS.

+) For reference, AWS architecture diagram has a tool called Cloud Mapper, so you don’t have to draw it.

  • back office issue

Problems were problems that could not be searched on the django admin page, did not contain detailed pages, or did not show lists, and could be fixed by testing one by one on the test server.

  • test tool research & start to use Pytest

Since I came to SLID as a DevOps part, I continued to research the test tool while working on the backend. At this time, the test tools I found were unit tests and pytest, of which pytest that can simply write test codes in a functional type were selected as our testing tools. Since then, the development process has been changed to TDD, and Pytest has been useful.

- 10월

  • Design a new Login API

From October, I participated in the Sprint and participated in the login api improvement work. SLID originally had a Temp user that could use the SLID without logging in. It was an operation to remove the Temp user and move the existing temp user’s db to the logged-in user’s db.

- Users who sign up for membership on a new device.

- A user logging in from a new device.

- A user who subscribes with Tempuser JWT

- A user who logs in with Tempuser JWT.

In each case, we carefully checked whether there were any edge cases and whether there were any problems in the frontend’s edge code.

The advantage of SLID I think is that all developers are sincerely contemplated. In particular, I felt a lot for Adriel, if I explained something, I could always make better achievements than my own judgment by constantly contemplating why I did it and whether it was the best.

  • CI / CD tool research

For effective distribution, many tools were searched, and among them, github action, which can set github PR as trigger, was used to enable automatic testing. What I did was a system in which the frontend’s test code automatically ran when the PR is submitted.

  • Postman & API documentation

It was suggested and accepted to use postman for effective API testing. The collection was set up and api was organized in Postman, and the sample for each response code was stored so that the front-end part could easily check. After that, I felt that there was a limit to using only postman as an api document, so I created a new page of notion and organized the api document.

11월

  • change Email Template (feat. AWS lambda)

We created a function that allows users to send emails using AWS Lambda and register it in Cognito’s email trigger to create a function that allows authentication codes to go to custom email when users sign up for membership with email.

  • login edge case

SLID created a login function using the AWS Cognito function, but when logging in using cognito, it was difficult to predict the error because AWS responded directly, not from the server we made. Therefore, I looked at the Cognito official document and summarized when and what error codes occur in our changed login system and how to cope with each error situation.

Diagram written down errors that may occur in each login and how to deal with them.

As a result of organizing, not only did it become clear what API the backend should provide, but the frontend could know when, in what situations, how to communicate with the server, and what pages to go to, and the design could design how to connect the screen from a user’s point of view.

3. Retrospective …

- SLID culture that actively accepts…

I didn’t think I could contribute this much as a part-time intern either. I wondered if I could complete a single sprint, but I was able to participate in three sprints during my internship, solve back office issues, and introduce github action in my spare time. I think the reason why I was able to actively participate in work as a part-time intern is because of the culture of SLID that actively accepts it.

When you first enter the SLID, Junghyun explains the team culture, and the first of them is respecting others individually. I thinks that’s why SLID team members recognized me as a professional and respected and accepted everything I did, so I was able to start work without fear.

One more example, when I suggested using postman, SLID team immediately admitted it as a good idea, and I was able to make the next proposal without fear, watching Adriel use it harder than I did:D

- What I learned…

With the help of kind Adriel, I was able to ask and learn a lot. At first, it was my short AWS knowledge that only EC2 and RDS knew, but as more and more AWS were used, I was able to use numerous aws functions such as Cloudwatch, lambda, S3, Cloud Front, IAM, and Cognito. This experience that I had so much fun learning became an opportunity for me to become DevOps, a cloud developer. As I proceeded with the Sprint, I failed, succeeded, and I experienced countless things I learned a lot.

In addition, thorough gitflow, PR, and meticulous code reviews served as an opportunity to correct my development habits. I learned a lot from Adriel, who worked with me, and I gained a lot of reflection and enlightenment when I saw Adriel, who did not name any variables carelessly. I think I was able to become a calmer developer after working at SLID :)

I think I’ve been running nonstop from school to SLID intern this semester. Over the past 4 months, I’ve grown a lot in SLID, experienced a lot, and the 4 months with SLID was really meaningful.

I think the SLID will remain in my memory forever.
Thank you for reading my story. :D

Special Thanks to Adriel!

P.s. happy memories with Slid Team :D

Haley’s stair crews hot debut
intern -> TM level up
The best photographer, Justin
Christmas Party At SLID TEAM >_<
Gambler SOMI
similar look with Jena

Bye Bye!~!

--

--

Slid
Slid
Editor for

We empower lifelong learners by building a personal learning space. This is how 👉 https://slid.cc