본문 바로가기

Java

개발자 면접 질문 리스트 정리 (백엔드 중심) 면접에서는 밝고 웃는 모습, 그리고 자신감을 보여주면 된다고 생각을 했었다. 개발자의 경우, 코딩테스트와 포트폴리오로 그 사람을 정량것 평가가 가능하니, 면접에서는 태도와 자신감이 중심일 거라고 더더욱 생각을 했었다. 하지만, 이는 나의 착각. 1차 면접, 그리고 2차 면접에서도 여전히 그 사람의 역량을 꾸준히 평가한다.기술면접 질문을 답변을 하더라도, 그 사람의 역량이 어느정도 되냐에 따라 답변의 깊이가 다르다. 또한, 꼬리질문을 몇 단계로 나아가기 때문에, 겉으로만 외워서 말하는 건지 평가도 가능하다.그래서인지.. 서류 합격, 코딩테스트 합격을 해서 면접 기회를 얻었다고 해서 안심하지 못하는 습관을 가지게 되었다. 그래서 면접을 준비할 때마다, 단순히 답변을 외우기보다는 어떤 질문이 반복적으로 등장.. 더보기
Java의 메모리 구조: 힙(heap)과 스택(stack)을 중심으로 알아보자 프로그래밍을 잘 하려면 코드를 잘 짜면 된다라고만 생각하기 쉽다. 그런데, 코드를 잘 짜야 된다는 것은 정확히 무엇을 의미할까? 알고리즘 문제를 풀다보면, 기깔나게 압축해서 코드를 작성한 답안들을 보면 감탄이 저절로 나온다. 이것이 과연 코드를 잘 짜는 것일까..?저는 이를 운전에 비유하고 싶다. 운전을 잘한다고 하면, 영화 속 레이싱 장면처럼, 주변 장애물과 차를 요리조리 비켜서 과속하는 것을 생각할 수도 있다. 하지만, 주변에서 운전을 잘한다는 평판을 얻는 사람들을 보면, 주변 도로의 움직임을 전반적으로 파악한다는 것이 특징이다. 여기서 어떤 차량에 우선권이 있고, 본인은 언제 교차로에 진입할지 파악을 한다. 그리고 서로 조율과 배려를 통해, 부드러운 교통흐름이 완성된다.이제 이를 개발자로 비유를 하.. 더보기
기술적 의사결정: Node.js에서 Spring Boot로 넘어간 이유 Java.. 그러니까 서버용 프래임워크로써 Spring(추후 Spring Boot로 이어지는) 오래 전 부터에 전성기를 누린 언어이고, 지금 들어서는 조금 옛스러운 것으로 취급하는 시선도 있다. 또한 그동안 말 많았던 Javascript가 Typescript 등 착실히 단점을 보완하기 시작하면서, 점유율을 점차 늘리고 있는 추세.. 비전공자가 백엔드를 입문할 때, Node.js의 상대적으로 가벼움, 배포의 용이성, 완만한 학습커브에 매력을 느껴 Node.js를 선택을 한다.저 또한 그러한 장점이 매력적으로 끌려와 백엔드 입문을 Node.js로 선택을 하였다. 하지만... 공부를 하면서, 점점 이러한 고민을 하게 되었다. 왜 엔터프라이즈 급의 기업에서는 Spring Boot를 사용하는 걸까? 혹은 금융권 .. 더보기
왜 백엔드에서는 Spring을 사용하는가? 오랜만에 TIL을 작성해본다!사실 우리나라는 자바 공화국이라고 부를 정도로, Java를 많이 사용한다. 정확히는 Java라는 언어만 사용하기 보다는 Java와 함께 Spring 프래임워크를 함께 서버 구축하는데 사용을 한다. 서버 구축을 위한 프래임워크는 생각보다 다양하다. Javascript의 Node.js, Python의 Django, C#의 .Net 등등.. 그런데 우리나라 만큼은 아니더라도.. 해외에서도 Spring은 서버에서 주로 사용하는 프래임워크다.왜 Spring을 선호하는 걸까? Spring 만의 장점이 있는 걸까? 지금 이번 글에서 다뤄보고자 한다. 보편적으로 사용하는 백엔드 프래임워크 비교해보자언어JavaJavascriptPythonPHPC#프래임워크Spring Node.jsDjango.. 더보기