면접에서 가끔 Symbol에 대해 물어보곤 하죠. "Javascript의 7번째 원시 타입이에요. 유일한 값을 만들 때 쓰이는..." 여기까지는 많이들 답변하시더라고요. 하지만 Symbol의 진짜 강력한 점은 따로 있습니다. JavaScript 엔진의 내부 동작을
“당신에게 직접 커피챗을 요청하는 회사가 있다면 어떤 기분일까요?”불과 2년 전까지만 해도 저는 서류 탈락과 면접 불합격 통보를 일상처럼 받아들이고 있었습니다. 그렇게 수십 통의 거절 메일을 받으며 스스로를 개발자로서 부족하다고 느끼던 시기가 있었죠. 하지만 이제는 구
프론트엔드 개발자라면 누구나 겪는 상황입니다."이 부분 최적화했는데 확실히 빨라진 것 같아요!""음... 제 환경에선 별로 차이를 못 느끼겠는데요?"Chrome DevTools를 열고 성능 측정을 시도해보지만:매번 도구를 열고 Record 버튼을 눌러야 하는 번거로움브
Next.js 애플리케이션에 다국어 지원을 추가하면서 겪은 경험을 공유하고자 합니다. 처음에는 널리 사용되는 i18n 라이브러리들의 문서를 따라 구현했지만, Cloudflare에서 빌드가 계속 실패하는 문제에 직면했습니다. 이러한 어려움을 겪은 후, 직접 다국어 지원(
노션프레소 모임처음엔 혼자서도 충분할 줄 알았습니다."코드만 잘 짜면 되겠지" — 이것이 제 첫 번째 오만이었죠.노션의 강력한 에디터 기능을 활용한 블로그 엔진을 만들겠다는 아이디어로 시작했습니다. 초기엔 단순한 사이드 프로젝트로 구상했어요. ‘좋은 아이디어만 있으면
"Router의 동작 원리를 설명해주시겠어요?"이 질문에 식은땀을 흘리신 적 있나요? 😰면접장에서 React Router의 동작 원리를 물어보면 대부분의 개발자들이 이렇게 답변합니다:"SPA에서 페이지를 새로고침하지 않고 이동하기 위해 사용합니다."면접관의 표정이 미
BFF는 Backend For Frontend의 약자로, 말 그대로 프론트엔드를 위한 백엔드 서버를 의미합니다. 프론트엔드의 요구사항에 맞게 구현하기 위한 도움을 주는 보조 서버라고 할 수 있죠. Next.js나 SvelteKit 같은 프론트엔드 프레임워크의 서버사이드
벨로그를 욕할 생각은 없어요! 오히려 개발자 커뮤니티를 만들어준 벨로그에 감사하죠. 😅하지만... 솔직히 말씀드리면 벨로그 에디터가 좀 불편하지 않으신가요? 이미지 하나 올리는데도 드래그 앤 드롭도 제대로 안되고, 2단 컬럼으로 예쁘게 정리하고 싶어도 마크다운으로는
API 연동을 할 때, 백엔드의 데이터가 준비되지 않아 작업이 지연된 경험이 있으신가요? 아마도 많은 주니어 개발자들이 API 요청에 필요한 필드명, 데이터 포맷, 또는 엔드포인트가 나오지 않아서 작업을 멈춘 채 기다려본 경험이 있을 겁니다. 백엔드가 준비될 때까지 발
DB 설계, 정말 어렵죠? 저도 주니어 시절 똑같은 고민을 했습니다. 기획이 바뀔 때마다 DB 구조를 뜯어고치느라 밤새우기 일쑤였죠. 기획자와 티격태격하며 '이런 건 DB 구조상 어렵습니다'라고 말하는 제 모습이 부끄러웠습니다. 하지만 지금은 달라요. 어떤 변경사항이
개발자라면 누구나 경험해봤을 겁니다. 처음엔 모든 게 순조롭게 진행되다가, 어느 순간부터 작은 기능 하나 추가하는데도 하루 종일 걸리는 상황 말이죠. 😓"어제까지만 해도 잘 돌아갔는데, 왜 갑자기 이렇게 됐지?""기획자님, 그거 수정하려면 일주일은 걸릴 것 같아요..
웹 개발을 하다 보면, 선언형 렌더링의 장점을 체감하게 되는 순간이 한두 번이 아니죠. 특히 React는 복잡한 HTML 구조를 훨씬 간편하게 다룰 수 있게 해주면서 큰 인기를 끌었습니다. "선언형"이란, 코드를 절차적으로 작성하는 대신 원하는 결과만 선언적으로 기술하
TextField솔직히 말하면, 처음엔 저도 ‘왜 굳이 이걸 캔버스로 만들어야 하지?’라는 생각이었어요. 웹에는 이미 잘 만들어진 텍스트 필드가 넘쳐나는데, 굳이 그 고생을 자처해야 할 이유는 없었죠. 근데 가만 보니까… 왠지 도전해보고 싶더라고요. ‘한 번 해보자!
안녕하세요! 이번 글에서는 제가 그동안 작업해온 프론트엔드 프로젝트들을 소개하려고 해요. 단순한 작업물 소개가 아니라, 인터랙션과 UX 측면에서 제가 어떤 고민을 했고, 그걸 어떻게 해결했는지에 초점을 맞췄습니다.결국, 사용자에게 더 나은 경험을 주기 위해 어떤 선택을
개발자로서 여러분도 이런 고민을 해보셨을 겁니다. 프론트엔드로 갈지, 백엔드로 갈지, 아니면 풀스택을 선택할지 말이죠. 저 역시 그랬습니다. 적성에 맞는 분야를 찾기 위해서 수많은 선택과 고민을 했습니다.저는 비전공자였기에 더더욱 전문성에 대한 불안감이 컸습니다. 개발
안녕하세요, 야근에 지친 프론트엔드 개발자 여러분. 의료 서비스 회사에서 웹 검사 서비스를 개발하던 때였죠. 교수님들의 끝없는 요구사항에 저는 점점 지쳐갔습니다."이 막대 그래프의 간격을 좀 더 좁게 할 수 없나요?...
이제 이거 하면 경쟁력 바로 가집니다! 페이지 전환 기술을 익히면 웹 개발뿐만 아니라 앱 개발에서도 자연스럽게 경쟁력을 갖출 수 있습니다. 웹뷰 같은 기술 덕분에, 이제 웹 프론트엔드 개발자도 앱을 바로 개발할 수 있습니다. 실질적 앱개발자로 전직할수도?
여러분, 믿기 힘든 일이 일어났어요. 저를 서류 탈락시켰던 회사에서 갑자기 이직 제안이 왔다니까요? 그것도 한 군데가 아니라 여러 곳에서요! 불과 5개월 전만 해도 저는 서류 탈락 연속 히트 치던 그냥 평범한 개발자였어요. 유명 회사 경력? 없음. 리액트 실무 경험?
설마 useCallback은 함수를 useMemo는 값을 저장한다로 답하진 않겠죠? useMemo(() => 원하는 함수)로 사용하면 useCallback이랑 뭐가 다를까요? ㅎㅎ 이번 시간에는 리액트의 숨겨진 비밀을 파헤쳐 보겠습니다
리액트로 개발하면 빼놓을 수 없는게 전역 상태 관리죠. 뭐 순수하게 UI컴포넌트를 만들어야 한다니 뭐니 해도, 저쪽에서 쓰고있는 상태를 이쪽에서 바꿔야 하는 일은 꼭 생깁니다.그래서 이제 전역상태를 url로 관리하는법을 소개합니닷!!