#로직

질문 2
해시태그 없이 키워드만 일치하는 질문은 개수에 포함되지 않아요.

21일 전 · 백승훈 님의 답변 업데이트

경력 4년차 하지만...

SI 경력 4년차이고 1년 반정도는 Spring과 Oracle을 사용했지만, 고객사에 상주하여 운영을 하면서 거의 쿼리만 1년반 동안 짰었고, 나머지 2년반은 고객사에서 새로운 프로젝트를 맡아서 nextjs 개발을 했었고 현재는 회사를 그만두었습니다. 하지만 서비스 회사로 백엔드 엔지니어 이직을 하고싶은데 내세울만한게 운영업무하면서 고객사의 요청을 받아서 그에 맞는 로직으로 쿼리짜본 경험과 nextjs 개발을 한 것이 다라서 딱히 백엔드 엔지니어로서 내세울만한 것이 없습니다 그래서 승부를 볼만한게 사이드 프로젝트밖에 없다고 생각하여 프론트 백엔드 인프라까지 독학해서 혼자서 멀티 클라우드 컨테이너 리소스를 쿠버네티스로 관리하고, ci/cd를 구축하여 자동화 배포 시스템을 만들고, 실제 서비스 중인 백엔드 서비스 코드를 단위 테스트 코드 작성, grafana까지 실제 서버에서 연동하여 모니터링 관리까지 대규모까지는 아니지만 작게나마 프로덕션 레벨의 사이트까지 1인으로 개발/운영해보려고 하는데 기껏해야 사이드 프로젝트가 이직에 도움이 될까요? 이직 관련 질문에 대한 답으로 어떠한 답변은 사이드 프로젝트가 필요없다는 경우까지 보았어서요 실제로 4년동안 백엔드업무라고 해봤자 1년반 동안 쿼리만 손대본게 전부입니다... (참고로, 매번 같은 업무만 하다보니 너무 질렸는데 백엔드 개발과 더불어 요즘 백엔드 엔지니어들은 인프라쪽까지 관리한다고하여 인프라쪽도 공부해보니 재밌기도하고, 평소 cs 지식에 관심이 많다보니 이해도 더 잘되서 인프라까지 붙여볼 생각을 했습니다. 최대한 트렌디한 기술을 사용하는 것이 사이드 프로젝트에서 돋보일수 있는 장점이라고 생각하여 마이크로서비스 아키텍처까지 적용하려고 했지만 너무 과하다고 생각해서 추후에 염두에 두고 백엔드를 개발하려하고 이직에 낼 프로젝트에는 넣지 않으려고 합니다...)

개발자

#이직

#백엔드

답변 2

댓글 0

조회 174

15일 전 · 평비 님의 답변 업데이트

5년차 물경력 개발자 이직 ..

안녕하세요. 5년차 물경력 개발자입니다. 누가봐도 물경력이 맞다고 생각합니다. 개발실력이 너무 부족한데 눈 낮추고 중고신입으로 도전해보는게 좋을까요? (원래 눈도 그렇게 높지 않습니다.) 4년차 까지는 스프링부트 프레임워크 기반의 운영 위주로 업무했는데요. 4년동안 계속 개발 업무만 열심히 한게 아니라 사실상 QA 나 간단한 스크립트 버그 수정 업무가 많았습니다. 나름 대형 프로젝트 운영업무를 진행했지만. SQL 및 자바 로직도 작성했습니다. 그렇지만 많이 부족하다고 생각합니다. 업무 난이도도 그렇게 높지 않았고요. 그러다 회사 방향이 바뀌어 1년간 퍼블리셔 업무만 진행하고 있는데, 사실 이때 이직 준비를 했어야 했는데.. 무기력증이와 받는 대로 업무 하고 있었습니다. 하지만, 제가 원하던 방향과 너무 달라 이직을 생각중인데요, 자바 기반의 백엔드 서버개발자로 가고 싶어서 저번주 부터 코테부터 미니 프로젝트까지 만들면서 공부중인데.. 정말 많이 까먹었더라고요.. 아무리봐도 5년차 개발실력이 아니여서.. 자신이 없습니다. 현재 연봉이 3000후반인데, 저는 고생해도 되니 이젠 진짜 개발 업무를 제대로 하고 싶습니다...이 상태라면 연봉을 낮추고라도 중고신입으로 도전해보는게 베스트일까요? 현업과의 소통이나 업무프로세스?( 로직작성X, 업무 진행에대한 ) 가장 중요한 개발실력은 5년차라고 말하기 뭐하네요.. 현직자분들 현실적인 조언 부탁드립니다. 걍 쌩신입으로 가라 ㅠ 이런말이나요..

개발자

#이직

답변 2

댓글 0

추천해요 2

조회 1,607

2달 전 · 익명 님의 새로운 댓글

서비스 회사에 취업

안녕하세요. 서비스 회사에 취업을 하게 되었는데 개발자가 2명뿐인 회사입니다. PM으로 되어보이시는 분과 3년차인 저 이렇게 두명이 될 예정입니다. 제가 고민이 되는건 서비스회사에서 PM으로 되어보이시는 개발자분이 저의 사수가 되어서 일을 진행 해주실지 아닐지 애매하다는 점과 기존 회사의 시스템을 리액트로 버전업 하는게 메인 개발건이라고 들었는데 문제는 그 개발건을 si 업계에 어느정도 맡긴다고 이야기 하셨습니다. 이럴 때 제가 어떻게 공부하고 성장하는 방식이 옳은지 혹은 다른 회사를 알아봐야하는 것인지 고민이 됩니다. 또 다른 고민으로는 회사 생활 중에 코드리뷰나 비즈니스 로직같은 경우 혼자서 회사생활 및 공부하면서 진행해야할 때 다른분들은 어떻게 하셨는지 궁금합니다!(ai를 활용해서 코드리뷰를 했다거나 혹은 리팩토링을 어떻게 하셨는지) Ps.면접때는 개발을 한다고는 하셨습니다.

개발자

#사수

#성장방법

#개발고민

답변 1

댓글 5

조회 148

2달 전 · 익명 님의 새로운 댓글

이번에 이직하게 된 개발자(경력 2년)입니다.

이직하는 회사가 서비스 회사인데 개발자가 리드개발자 한 분이신 회사입니다.. 서비스 자체는 10년이상 된 회사여서 비즈니스 로직이나 이런 부분에는 고민이 없는데 개발자 인원이 적은 회사에 어떤 장점과 단점이 있을까요..?

개발자

#이직

#사수

#주니어개발자

답변 1

댓글 1

조회 133

2달 전 · 익명 님의 새로운 댓글

채팅 애플리케이션에서 Redis 메시지 저장과 RabbitMQ 전송을 안전하게 처리하려면 어떻게 해야하나요?

안녕하세요. 현재 백엔드 개발자를 지망하는 대학생입니다.. 예전에 Springboot를 활용해서 개발한 채팅 애플리케이션 프로젝트를 리팩토링하는 과정에서 문제가 발생하여 질문 드립니다. 아래와 같은 아키텍처 애플리케이션을 구현했습니다. - MySQL: 채팅방 정보(채팅방 이름, 참여 인원수 등등), 사용방 정보 데이터 저장. - Redis: 채팅 메시지 데이터 저장 - RabbitMQ: 채팅 메시지를 전송하기 위한 메시지 브로커 STOMP over WebSocket을 활용해서 클라이언트에서 메시지를 pub해서 메시지 브로커인 RabbitMQ를 거쳐서 구독한 클라이언트에게 메시지(채팅)을 전송하도록 구현했습니다. 그런데 문제가 발생하는 로직이 있습니다. [채팅방 가입 로직] 1. @Transactional 내부에서 MySQL에 채팅방 데이터 저장. (해당 유저가 채팅방에 가입한 것을 저장) 2. Redis에 "User가 채팅방에 들어왔습니다."라는 메세지를 저장. 3. 해당 메시지를 RabbitMQ로 전송. (`rabbitTemplate.convertAndSend(...)`) 이런 상황에서 Redis나 RabbitMQ에서 문제가 발생해서 하나라도 정상적으로 완료되지 않으면 문제가 발생합니다. Redis 서버에 문제가 생겨서 채팅 메시지를 정상적으로 저장하지 않더라도 RabbitMQ를 통해 메시지가 전송되고, RabbitMQ 서버에 문제가 생겨서 정상적으로 전송되지 않더라도 Redis에 채팅 메시지가 저장이 됩니다. 이러한 문제를 해결하기 위해서 2PC, SAGA 패턴, Outbox 패턴 등등을 알아봤고, 그 중 가장 괜찮다고 생각했던 패턴이 Outbox 패턴이었습니다. 근데 또 어려움이 생겼는데, Outbox 패턴을 사용하기 위해 Pulling 기법을 사용 하자니 Redis에 무리가 생길 것 같고, 트랜잭션 로그 테일링 패턴을 사용 하기에는 Redis가 이를 제대로 지원하지 않아 구현이 굉장히 어려워진다는 문제가 생겼습니다. 그래서 MySQL을 Outbox 저장소로 사용할까 고민도 해보았는데, MySQL을 사용하면 속도 면에 불리해지지 않을까라는 생각이 또 들었습니다. 이러한 문제를 어떻게 해결하면 좋을까요...? 제가 궁금한점은 다음과 같습니다. 1. Redis를 활용하는 프로젝트에서 MySQL을 Outbox 저장소로 사용하는 것은 좋지 않은 방법일까요? 2. Outbox 패턴이 최선일까요? 현업에서는 이러한 문제를 어떤 식으로 해결하는지 궁금합니다.

개발자

#spring

#rabbitmq

#redis

#mysql

#transaction

답변 1

댓글 1

조회 129

한 달 전 · 익명 님의 새로운 댓글

컴공입니다. 휴학과 졸업유예 중에 고민됩니다

안녕하세요. 저는 컴공 4학년 대학생입니다. 작년에 진로고민을 엄청 많이 하다가, 대학원을 가려고 준비하였습니다. 그러나, 정말 연구의 길이 맞는지 확신이 서지 않아서 한참 고민하였고, 연구랑은 성향이 안맞다고 생각해서 백엔드로 진로를 바꾼지 3개월 정도 되었습니다. 학점은 4.4x 이고, 수도권 대학이며 자격증은 없습니다. 객관적으로 프로젝트 경험이 부족합니다. 백엔드를 선택한 이유는, 먼저 프론트, 안드로이드를 약간 경험해봤는데 너무 재미가 없어서 남은 선택지였기 때문이구요. 데이터 만지는 거를 좋아하는데 백엔드도 비슷한 거 같아서 선택하였습니다. 전에는 백엔드도 재미없을 것 같다고 생각해서 안해왔는데, 제가 원리를 좀 깊이 파는 거를 좋아하는 편이기도 하고 머릿속으로 시나리오 그리면서 개발할 수 있어서 은근 재밌더라구요. 특히 데이터쪽을 좋아해서 취미로 데이터쪽도 같이 보고 있고, Ai는 필수라고 생각해서 그쪽도 같이 공부하는 중입니다. 현재 인프런에서 백엔드 강의를 들으면서, 교내 연합 개발동아리를 하나 하고 있구요. 알고리즘 문제도 매일 풀고 있습니다. 백준 골드4 되었지만, 실제 수준은 그정도는 아닙니다. 그런데, 당장 취업하기에 스펙이 되지 않을 것 같아서 휴학을 해야할지 고민입니다. 1년만 더 일찍했으면 좋겠다는 생각이 들 정도로 하고 싶은 게 많습니다. 2,3학년 때 개발을 많이 했어야했는데… 라는 생각이 많이 들더라구요. 졸업작품으로 백엔드 맡아서 하고 있는데, 소셜 로그인도 진행시키고 싶고, 대량의 트래픽을 발생시켜서 안전하게 처리되는지, 보안 로직은 제대로 되어있는지 등등 리팩토링을 하고 싶은 게 많습니다. 그러면서도 학교를 빠르게 졸업해서 어디든 경험을 쌓아야하려나? 싶기도 합니다. 이런 상황에서 휴학을 하는 게 맞는지, 아니면 계속 다닌 후에 졸업하는 게 나은지, 졸업 유예를 하는 게 맞는지 선생님들께 조언을 구하고 싶습니다. 쓴 소리도 감사히 받아들이겠습니다.

개발자

#백엔드

#취업

#대학생고민

#대학생

답변 1

댓글 1

조회 232

2달 전 · 아이엠시스텍 이병수 님의 질문

WPF 잘하시는분 원격지원

안녕하세요. 간단한 프로그램인데 잘안되네요. 아래와 같이 요청드립니다. 1 wpf 디버깅 및 로직 개선 2 전반적인 질의 응답 금액 시간당 10 010-9667-4455 전화주세요

개발자

#wpf

답변 0

댓글 0

조회 80

2달 전 · 박준서 님의 새로운 댓글

리액트 프로젝트에 FSD 아키텍처 적용. 이 구성이 맞을까요?

안녕하세요. 현재 진행 중인 리액트 프로젝트에서 유지보수성과 확장성에 어려움을 느껴 폴더 구조를 Feature-Sliced Design(FSD) 아키텍처 기반으로 전면 리팩토링했습니다. 기존에는 `components/`, `pages/`, `apis/` 등 기능과 역할이 섞인 구조로 되어 있어, 코드의 위치가 불분명하고 협업에 어려움이 있었습니다. 이를 해결하고자 다양한 아키텍처를 조사한 끝에, FSD의 레이어 개념(Layers)에 맞춰 다음과 같은 방식으로 구조를 정리했습니다. - `app/`: `App.js`, `index.js` 등 프로젝트 진입점과 글로벌 설정 파일을 포함 - ` entities/`: `User`, `Article`, `CodingZone` 등 주요 도메인의 데이터 모델과 API 연동 담당 - `features/`: 로그인, 게시글 작성, 코딩존 출석 등 각 기능별로 모듈화하고, 필요한 경우 `hooks/` 등의 내부 디렉토리로 세분화 - `pages/`: 라우팅과 연결된 실제 페이지 컴포넌트 관리 (예: `CreatePage`, `EditPage` 등) - `widgets/`: 재사용 가능한 독립 UI 요소들 (예: `Footer`, `Navbar`, `Pagination` 등) - `shared/`: 공통 API, 유틸, 모달 컴포넌트 등 여러 기능에서 공유되는 요소들을 배치 기능 중심의 구조로 바꾸면서, 각 요소의 역할이 명확해지고 코드 탐색 및 유지보수가 훨씬 쉬워졌습니다. 현재는 복잡한 비즈니스 로직이 없어 `processes/` 레이어는 생략했지만, 추후 워크플로우가 필요한 기능이 생긴다면 도입할 계획입니다. 제가 구성한 이 폴더 구조와 레이어 분리가 실제 FSD 아키텍처 가이드에 부합하는 방향인지, 혹시 보완하거나 개선할 부분이 있다면 조언을 구하고 싶습니다. 자세한 내용은 블로그에 정리해 두었습니다. 👉 [https://juncci.tistory.com/4](https://juncci.tistory.com/4) 읽어주셔서 감사합니다!

개발자

#fsd

#react

#refactory

#프론드엔드

#폴더구조

답변 1

댓글 1

조회 166

3달 전 · aigoia 님의 답변 업데이트

이직 시 단독 작업한게 걸림돌이 될까요?

프론트엔드 3년차 입니다. 디자이너,백엔드 개발자와 작업은 같이 했지만 프론트엔드 파트는 혼자 전부 진행하였습니다. 회사에서 보낸 시간이 너무 많아서 1년반정도가 인생에서 사라진 느낌이 들 정도였습니다. 그동안 트러블 슈팅, 혼자서 해결한 문제들이 너무 많아서 그런것들 보단 ( 알고보면 단순한 내용들이거나 시니어가 있었다면 금방 해결될 문제들입니다. ) 어려운 전제조건 하에 개발한 기능, 수치적으로 표현 가능한 기능에 대해서 이력서에 기입했습니다 허나 기입한 기능들 자체가 글로 적으면 대단해 보이지가 않는다는게 문제입니다. 오히려 단독으로 했다고 하면 과장해서 적어놓은 사기꾼같아보일까봐 걱정입니다. 이력서에 적힌걸 보면 정렬,최적화,구조 변경 이런것들이거든요... 근대 그것들을 클라이언트 단에서 디자인 패턴까지 쓰지않으면 안될정도의 복잡한 로직을 구현한거긴합니다만 결과 자체는 단순히 필터링 정렬 표기 그런것들입니다.. , 그걸 이력서에 다 기입할 수가 없어서 고민입니다. (react , next를 사용하였습니다) 또한 혼자서 서비스와 백오피스를 다 작성했다보니 효율적으로 수정 가능하게 진행했다, 다른 프로젝트에서 사용하기 용이하게 코드구조를 변경했다. 정도만 적을 수 밖에없었습니다. 어렵기 보단 얼마나 효율적으로 구조를 잡고 진행하냐의 문제였거든요. 이력상으로 봤을때 화려한 기능이나 서비스를 만든건 아니라서 더 더욱 차반 취급받을까봐 고민입니다.. 혼자서 많은 고민과 문제를 해결했지만 3자입장에서 봤을때 전혀 볼게 없는 심각한 상황입니다.. (시간만주면 3d든 스트리밍 chart든 브라우저 api 활용이든 map api든 canvas든 다 금방 배워서 할 자신이 있지만 그런 종류의 작업들은 회사 일로선 전혀 하질 못했습니다.. ) 연봉을 대거 낮춰서 신입 자리라도 지원해야할까요..? 최근엔 회사에서 먹고 자지 않아도 될정도라 알고리즘도 공부하고있고 트러블 슈팅이나 개발하면서 문제해결에 도움되었던 것들을 적으려고 블로그도 만들고 있긴합니다만. 너무나도 부족하고 모자라 보입니다.. 개발 실력도 올랐고 배포,운영 경험도 쌓였지만 작업내용 특성상 죄다 공개를 하지 못하니 어떻게해야할지 고민입니다..

개발자

#프론트엔드

#이직

#이력서

#경력기술서

답변 1

댓글 0

조회 174

3달 전 · tiptok 님의 질문

스프링부트 레이어드 아키텍쳐는 어떤 방식을 권장/선호 하나요?예시있습니다!

전형적인 걸로는 1. Controller > Service > ServiceImpl > Dao > DaoImpl(xml 호출) 이러한 방식이 있습니다. 이번에 변경을 위하여 몇가지를 생각해보았는데 2. Controller > Service > ServiceImpl(mapper 호출 + 비즈니스 로직) 3. Controller > Service > ServiceImpl(Dao 호출 + 비즈니스 로직) + Dao(mapper 호출) 이렇게 2개를 생각하고 있습니다 . 2번의 경우는 dao역할과 비즈니스 로직이 전부 serviceImpl에 들어가있다보니 gpt도 권장하지 않는 방식이고 저도 마음에 잘 들진 않는데 파일이나 소스의 양이 줄어든다는 장점이 있긴 해보입니다. 솔직히 Controller > Service > ServiceImpl > Dao > DaoImpl 처럼 극단적으로 계층을 나누는 것도 생각해보았는데 이렇게 극단적인 것보다는 3번이 나아보이긴 합니다. 다들 몇 번을 권장하나요? 참고로 개인프로젝트입니다! 기존엔 Controller > Service > ServiceImpl > Dao > DaoImpl(sqlSession.~ 호출) 방식을 사용했습니다. 안정성을 위하여 mapper 방식으로 변경할 겸 구조도 변경하는 게 나아보여 질문드립니다! 한가지더, Dao나 DaoImpl 명칭을 Repository.java, RepositoryImpl.java 로 변경하는 거에 대해선 어떻게 생각하시나요?

개발자

#스프링부트

#구조

#레이어드-아키텍처

답변 0

댓글 0

조회 102

3달 전 · 김혁진 님의 새로운 답변

nextjs middleware 에서 protected route 처리 하는 방법이 궁금합니다

middleware 에서 토큰 인증에 따른 redirect 를 구현 할려고 합니다 제가 생각한 로직은 인증이 필요한 페이지는 accesstoken을 쿠키에서 받아오고 토큰이 없거나, 인증이 실패하면 login 페이지로 이동, 토큰이 만료된 경우에는 refresh 요청이후 accesstoken,refreshtoken 재발급 이후 원래 이동할려는 페이지로 이동 이렇게 생각중인데 다만 하나 걸리는게 middleware에서 refresh api 요청을 하는게 과연 올바를까? 궁금합니다 그럼에도 굳이 middleware 에서 할려는 이유는 page단 에서 처리할경우에는 결국에는 한번 그 페이지로 이동했다가 처리되는거라 깜빡이는 이슈가 생겨서 그렇습니다 보통 어떤식으로 처리하는지 궁금해요

개발자

#react

#nextjs

#프론트엔드

#middleware

#token

답변 2

댓글 0

조회 111

3달 전 · 허니 님의 새로운 답변

프론트엔드 기본기를 기를 수 있는 도서가 있을까요??

지난해 하반기 취업하여 풀스택 개발자(프론트 비중이 높은)로 일하며 프론트엔드의 핵심이 무엇인지 모르겠습니다. 취준할때 백엔드와 devops 관련으로 많이 공부했었습니다. 그 과정에서 백엔드 개발자로서 저만의 가치관과 개념을 가질 수 있었습니다. 근데 프론트엔드는 빠르게 변화해서 그런지 뭐랄까 핵심이, 중심이 되는 가치가 뭔지 모호한 것 같습니다. UI/UX라고 생각하니 이건 너무 디자인 쪽으로 흘러가는게 아닌가?? 디자인은 감각의 영역아닌가?? 복잡한 로직이나 데이터 관리를 생각하니 이런건 다 백엔드에서 처리해야하지 않나?? 라는 생각으로 빠지는 것 같습니다. 신입개발자로 프론트엔드의 핵심가치에 대해 배울 수 있는 책이 어떤게 있을까요??

개발자

#프론트엔드

#웹개발

#풀스택

답변 1

댓글 0

조회 124

4달 전 · 익명 님의 새로운 댓글

4년차 개발자 연봉 협상 및 이직 고민

안녕하세요. 현재 중소기업에서 4년차 웹 백엔드 개발자로 근무 중이며, 연봉은 3,200만 원(금년도 연봉 협상 전)입니다. 회사 규모는 10인 미만이며, 현재 팀장을 맡고 있습니다. 곧 연봉 협상을 진행할 예정인데, 적정 연봉이 어느 정도인지 감이 잘 오지 않습니다. 개인적으로는 최소 3,600만 원 이상이 적절하다고 생각하지만, 지금까지는 회사에서 제시하는 금액을 따르는 편이었습니다. 현재 회사 규모와 제 경력을 고려했을 때, 4년 차 백엔드 개발자의 적정 연봉이 어느 수준인지 궁금합니다. 또한, 만족할 만한 연봉이 책정되지 않는다면 이직도 고민 중입니다. 현재 회사에서 어느 정도 인정받고 있으며, 이에 따른 상여금도 많이 받았습니다. 업무 스트레스도 크지 않아 낮은 연봉과 잦은 야근에도 계속 다니고 있었지만, 최근 들어 이직에 대한 생각이 점점 커지고 있습니다. 이직을 고민하는 이유 1. 함께 성장할 수 있는 개발자가 없음 - 입사 당시 스타트업 초기 단계였기 때문에 사수가 없었고, 독학으로 개발을 진행해 왔습니다. 개발이 재미있어 취미로 공부하며 배우고 있지만, 회사 내에 지식을 공유하고 함께 성장할 수 있는 개발자가 없는 상황입니다. - 현재 백엔드 개발자는 저 혼자이며, 나머지 팀원 두 명은 신입급 프론트엔드 개발자입니다. 앞으로 신규 채용이 이루어지더라도 신입 개발자가 들어올 가능성이 높아, 계속해서 우물 안 개구리에 머물게 될 것 같아 고민입니다. 2. 전문 인력 부재 - 기획, QA, 디자이너와 같은 전문 인력이 없으며, 기획과 디자인을 대표님께서 직접 맡고 계십니다(참고로 이전에 개발자셨습니다). - 저는 다른 회사에서 근무해 본 경험이 없어 잘 모르지만, 그때그때 PPT로 전달해 주시는 기획 자료를 볼 때 답답함을 느낄 때가 많습니다(물론 워낙 많은 일을 맡고 계시기에 이해는 합니다) - 현재 개발 프로세스는 디자인이 나오면 제가 DB 모델 설계, 비즈니스 로직 및 예외 케이스 정의하여 진행하는 방식입니다. 이러한 개발 방식이 일반적인지 궁금합니다. 최근 현타가 너무 많이 와서 조언을 얻고자 처음으로 글 올려봅니다. 조언 부탁드립니다 ㅠㅠ 그리고 혹시 요즘 개발자 취업 시장이 어떤지 알려주시면 감사하겠습니다.

개발자

#연봉

#이직

#경력이직

답변 1

댓글 1

조회 1,257

4달 전 · 익명 님의 질문 업데이트

RESTful 어디까지 지켜야 할까

특정 article을 전체 재정렬할 때 어떤 URL 형태를 선호하시나요? 1. PUT /articles RESTful을 엄격하게 따른다. URL에 동사는 넣지 않는다. HTTP Method를 PUT 또는 PATCH로 두고 바디를 통해 재정렬을 로직을 표현한다. 2. PUT /articles/reorder RESTful 규칙에 조금 어긋나더라도 직관적인게 최고다.

개발자

#restfulapi

#rest

답변 0

댓글 0

조회 54

4달 전 · @SoftyChoco 님의 새로운 답변

게시글 이미지 업로드를 구현하는데 궁금한 점이 있습니다.

velog를 참고하여 Spring + Vue를 이용하여 마크 다운 기반 게시글을 구현하고 있습니다.. 글을 쓰는 도중에 이미지를 올리면 s3에서 url를 반환하여, 이것을 통째로 Post 테이블 Content 필드에 저장하여 순서를 보장하는 식으로 진행하고 있습니다. 로직 흐름은 이렇습니다. 1. 사용자가 이미지를 올린다면, 클라이언트에서 글쓰기 버튼을 눌렀을 때 미리 만들어 놓은 UUID와 이미지를 서버로 보낸다. 2. 서버에서는 s3객체에 임시 저장 여부를 확인하는 isTemp를 태그를 넣어서 서버를 걸쳐서 S3에 쏜다. 3. S3에서 객체를 찾아서 key값과 클라이언트에서 보낸 uuid를 Image 테이블에 저장해서 Post와 간접적으로 연관 관계를 맺는다. 4. 글쓰기를 누른다면 내용과 UUID를 보내서 UUID를 Post의 primary key로 사용하고, UUID 기반으로 Image 테이블에서 key들을 갖고 와서 S3 객체의 isTemp 태그를 false로 바꾼다. 4-1 . 뒤로 가기나 임시 저장을 눌렀을 때는 isTemp를 true로 설정하고 저장한다. 5. 30일이 지날 때마다, Post에 있는 isTemp를 통해 임시 여부를 확인하여 임시 저장된 글을 삭제하고, S3에서는 수명 주기를 설정하여 태그를 기반으로 true인 이미지들을 삭제한다. 객체를 삭제하는 이유는 불필요한 데이터가 공간을 차지하는 것이 별로라고 판단했습니다. UUID는 글을 다 쓰기도 전에 서버로 쏘기 때문에, 어떤 게시글에서 쓰였는지 확인하기 위해서 사용했습니다. 성능이나 용량 면에서 안 좋다고 하지만, 이는 데이터를 넣어 놓고 조회를 하여 성능을 확인하였고 현재 프로젝트 크기를 생각했을 때 접목해도 상관없을 것 같아 넣었습니다. 하지만 이런 식으로 진행하니, 만약 사용자가 중간에 이미지 링크를 삭제한다면? 이라는 시나리오를 생각했을 때 이를 대처할 방도가 떠오르지 않습니다. 다른 분들은 어떤 식으로 처리했는지, 제가 너무 어렵게 생각하고 짜는지 궁금합니다.

개발자

#spring-boot

#s3

#게시글

답변 1

댓글 0

조회 64

2달 전 · nexter 님의 새로운 답변

스프링부트 코드 작성

연합동아리에서 활동 중인 대학생입니다. 프로젝트에서 스프링부트를 사용하는 백엔드를 맡고 있는데, 코드를 작성하는 법을 아직 모르겠습니다. 개념은 알겠으나 말그대로 로직을 직접 작성할때면 감이 너무 안오는데.... 공부를 어떻게 하면 좋을까요? 당장은 gpt한테 답변받은 코드를 위주로 쓰다가 오류가 생기면 그때그때 수정하고 있습니다ㅜ 장기적으로도 이게 좋은 방법은 아니라는걸 알겠는데 Service, Controller에서 로직을 써내려가기가 너무 추상적인 느낌이라 잘 모르겠습니다...ㅜㅜ 너무 답답하네요 스스로도

개발자

#springboot

#스프링부트

#백엔드

#웹개발

#공부법

답변 7

댓글 0

추천해요 6

보충이 필요해요 2

조회 2,198

5달 전 · 이준성 님의 질문

미디엄 운영 가이드라인, 네이버 블로그와 다른 무언가의 팁?

안녕하세요, 늦은 인사지만 새해 복 많이 받으세요 언론홍보대행사 겸 마케팅 대행도 하고 있는 종합광고대행사에서 근무중입니다. 신규 클라이언트 중 미디엄이라는 매체를 운영할 듯 합니다. 잘은 모르지만 검색끌에 커리어리에서 당근마켓에서 하는 사례를 보았고 이 매체 운영시 특정한 가이드라인이나 로직 같은 것이 있을까요?

PM/PO/기획자

#미디엄

#미디엄사용자

#medium

#블로그

답변 0

댓글 0

조회 30

6달 전 · 김도도 님의 질문

대기업SI와 서비스 기업

안녕하세요 현재 2개의 회사에서 최종합격을 한 상태인데 두 회사의 장단점이 명확하여 어떤 선택이 좋을까 의견을 듣고 싶어 글을 써봅니다 1. 제조 대기업 SI 연봉 : 5천 중반 워라밸 좋음 SM 업무를 주로 할 예정, 그룹사 시스템 개발 업무 레거시가 많고 쿼리에 비지니스 로직이 담긴 프로젝트가 많음 2. 시리즈 B 이상 서비스 기업(200인 이상 규모) 연봉 : 4천 중반 워라밸은 잘 모르겠음 백엔드 개발 업무 진행 예정, 코드리뷰/사내스터디와 같은 개발 문화 존재 꾸준한 트래픽과 성장하는 기업 서비스 운영 중(매출액으로는 000억대) 영끌 연봉으로는 1번 기업이 훨씬 높을 것으 로 예상 됩니다. 이전에 스타트업에서 근무를 했었기에 대기업 입사를 목표로 취준을 했지만 최종적으로는 IT 대기업에서 근무를 해보고 싶습니다. 선배님들이라면 어떤 선택을 하실까요...?

개발자

#스타트업

#대기업

#백엔드

#신입

답변 0

댓글 0

조회 143

6달 전 · CP 님의 새로운 댓글

프로그래밍 구현능력에 대해서

안녕하십니까 지금 신입으로 일한지 4개월 정도 되는 신입 개발자 입니다. 다름이 아니라 고민이 있어서 커리어리를 통하여 글을 작성해봅니다... 여러 강의 및 공식 문서 여러 유튜브 영상을 통해 만들어보고 싶었던것들을 만들며 어렵게 취업에 성공 하게됬습니다 그런데 아직 제 실력에 대해서 정말 많은 생각과 의문이 많이 듭니다... 포트폴리오를 만들때도 gpt를 많이 사용했고 평소에도 회사 업무도 만들어야할 기능이 있으면 공책으로라도 순서도를 그리며 정확하진 않지만 그래도 어느 흐름으로는 작성을 해야겠다 하면서 업무를 진행하고있는데요 그러다 도저히 안될땐 gpt를 사용해서 로직을 구현하고 업무를 진행 하고있습니다 그런데 사용 하면 할수록 정말 생각지도 못한 방법으로 구현을 하는걸 보고 정말 지금까지 내가 학습했던 방향과 지금 이 업무를 쳐내고 있는 내 자신이 성장은 하고있는건지 자괴감이 많이듭니다... 앞으로 라도 gpt사용을 자제하고 정말 생각이 안나는 로직과 구현은 구글링을 참고해서라도 만들면서 실력을 늘려야할지 의문입니다... 많은 선배님들은 어떻게 로직과 구현능력을 기르셨는지 정말 궁금합니다

개발자

#react

#nest.js

#next.js

#javascript

#프로그래밍

답변 3

댓글 4

추천해요 1

조회 167

7달 전 · 익명 님의 새로운 댓글

자바스크립트의 이벤트 처리 질문

리액트로 이미지 inpainting 컴포넌트를 만들고 있습니다. 사용자가 이미지 업로드를 하면 canvas 영역에 그 이미지가 채워지고 그 이미지에 mask 영역을 칠할 수 있는 이미지 에디터 컴포넌트인데요, 궁금한게 생겨 질문드립니다. 첨부한 코드는 컴포넌트의 코드중 이미지 업로드 시 onChange 이벤트의 처리기인 handleImageUpload 함수와, handleImageUpload 함수에서 호출되는 loadImage 함수의 코드입니다. 사용자가 input 요소에 이미지를 업로드하면 onChange 이벤트가 발생해 handleImageUpload 함수가 실행되고 loadImage 함수가 실행됩니다. loadImage 함수가 실행되면 img 객체가 생성되고 img 객체의 src를 지정하죠. 그러면 브라우저는 이미지 로딩을 시작하고 이미지 로딩이 완료되면 onload 콜백함수가 실행됩니다. 저는 이 과정을 자바스크립트의 콜스택, 이벤트 루프, 태스크큐 구조에서 나타내보자면 다음과 같다고 생각했습니다. 1. 초기상태 콜스택 : [ ] 태스크큐 : [ ] 2. 사용자가 파일을 업로드 -> onChange 이벤트 발생 콜스택 : [handleImageUpload] 태스크큐 : [ ] 3. handleImageUpload 내부에서 loadImage 함수 호출 콜스택 : [handleImageUpload, loadImage] 태스크큐 : [ ] 4. loadImage 내부에서 img 객체 생성 및 src 할당 콜스택 : [handleImageUpload, loadImage] 태스크큐 : [ ] Web API : 이미지 로딩 시작 5. loadImage 함수 종료, handleImageUpload 함수 종료 콜스택 : [ ] 태스크큐 : [ ] Web API : 이미지 로딩 진행중 6. 이미지 로딩이 완료되면 Web API가 onload 콜백을 태스크큐에 추가 콜스택 : [ ] 태스크큐 : [onload] Web API : 이미지 로딩 완료 7. 이벤트 루프가 콜스택이 비어있음을 확인하고 태스크큐에서 onload 콜백을 콜스택으로 이동 콜스택 : [onload] 태스크큐 : [ ] 8. onload 콜백 실행 (캔버스에 이미지 그리기 등) 콜 스택 : [onload, drawImage, ...] 태스크큐 : [ ] 일단 이 과정이 맞나요? 만약 이게 맞다면 생기는 궁금증이 있습니다. Web API에서 이미지 로딩이 진행되는동안 loadImage 함수 및 handleImageUpload 함수가 종료되면 loadImage 함수 내에서 생성된 img 객체는 가비지 컬렉터에 의해 지워져야 하지 않나? 그렇게 img 객체가 GC에 의해 사라지면 이미지 로딩이 완료되었을 시점엔 img 객체의 onload 함수도 없어진것이니 onload 함수의 로직은 실행이 되지 않아야 하는 거 아닌가? 하는 생각이 들어 질문드립니다

개발자

#자바스크립트

#react

#frontend

답변 1

댓글 1

조회 256

7달 전 · 익명 님의 새로운 댓글

빅데이터 직무 관련 대학생 3학년의 고민입니다

안녕하세요 저는 현재 대학교 3학년 2학기를 다니고 있는 컴퓨터학부 복수전공하는 학생입니다 커리어리에 진로를 고민하며 2년전에 질문글을 남겼었는데, 진로 고민을 끝내고 빅데이터로 진로를 정하였습니다. 그 때의 답변이 많은 도움이 되어서 진로 고민을 확정한 이 시점에 또 다른 고민이 생겨서 다시 한번 질문을 남겨봅니다. 현재까지 저는 운영체제, 네트워크 등 강의를 수강하고, 백준을 꾸준하게 풀며, 안드로이드 프로젝트 하나, 스프링 프로젝트 하나 이렇게 진행 중에 있습니다. 그리고 현재 저는 바이오 관련해서 데이터 사이언티스트 혹은 데이터 엔지니어 쪽을 희망합니다. 데이터 직무를 꿈꾸게 된 계기는 다음과 같습니다. 방학동안에는 반도체 공정관련해서 간단한 데이터 품질 예측 모델 대회에 참가하며 흥미를 느꼈었습니다. 어느정도 도메인에 대한 전문성을 가지고, 본인만의 로직과 AI 기술까지 다룰 줄 알아야 한다는 점이 제가 바라는 직업의 모습과 일치하였고, 생명공학에서 일하고 싶다는 저의 작은 꿈을 합칠 수 있다는 점에서 이 진로를 최근에서야 꿈꾸게 되었습니다. 다만 이 직업이 대학원을 가는 것이 추천되기도 하고,그렇다면 대학원 컨택하기에는 늦은 감이 있나 싶기도 하고, 캐글 대회에 자주 참여하는 것이 좋은 것인지 이 직무 관련하여 활동이 많이 없어서 걱정되기도 합니다. 바이오 도메인을 원하지만 필요로 하는 기업이 많지 않아보이기도 해서, 전망이 어두울까봐 고민입니다 그럼에도 불구하고 이 길을 선택해도 되는지, 현직자분들께서는 어떻게 생각하시는지 궁금하여 질문을 남깁니다. 더불어 어떻게 준비해야 좋을지도 간략하게 알려주시면 정말 감사할 것 같습니다

개발자

#빅데이터

#데이터사이언티스트

#데이터엔지니어

#대학생고민

답변 1

댓글 2

조회 90

7달 전 · 익명 님의 질문 업데이트

웹뷰 관련 공부를 어디부터 시작해야될까요?

웹으로만 프로젝트를 만들어봤는데 앱 관련 프로젝트도 해보고 싶어 웹뷰를 이용하여 기존의 프로젝트에 관련 로직을 추가해서 앱에서도 띄워보는 식으로 구현해보려고 공부하고 있는데 감이 잘 안옵니다.. 일단은 리액트 네이티브를 공부하고 있는데 제가 원하던 그림이 아니라 그냥 처음부터 앱 용으로만 개발하는 느낌이 들어서 좀 헷갈리네요.. 조언 부탁드립니다

개발자

#webview

#react-native

답변 0

댓글 0

조회 59

7달 전 · 익명 님의 질문 업데이트

개발자는 도메인이 같은 산업으로 이직해야 유리한가요???

아직 신입이라서 개발업계에 모르는게 많습니다. 도메인 지식 도메인 지식하는데, 도메인 지식이란게 제가 알기론 이커머스, 교육 , 금융 등등 하나의 산업에서 개발 지식 외에 개발을 하는데 있어서 필요한 비즈니스 로직을 만들기 위한 기반이 되는 필요한 지식이라고 알고 있습니다. 근데, 아무래도 하나의 산업에 대해서 그 지식을 알면 이전 직장에서 다음 직장으로 이직한다고 할때 같은 도메인 지식을 가지고 있는 회사라면 이직하기가 더 쉬울거 같은데 실제로 그런건가요?? 네카라쿠배를 다니는 대학 선배들 보면, 5개 기업들 모두 도메인이 쿠팡, 배민 말곤 도메인이 겹치는 경우가 거의 없는데도 5개 안에서만 골라서 이직하는 선배들을 많이 보는데, 어떤 경우는 도메인이 중요한 산업이 있고 어떤 경우는 도메인 지식이 중요한게 아니라 기술적인게 더 중요한 산업도 있는건지요?? 그리고 이직을 하게 된다면, 산업군이 다른 이직하려고 하는 회사에서 이전 직장의 도메인 지식에 대해서 어느정돈 알고 있는지 체크하는 경우가 많나요??

개발자

#이직

답변 0

댓글 0

조회 197

8달 전 · aigoia 님의 답변 업데이트

현재 직장대로 다니는게 맞는걸까요?

3년동안 같은 직장에 다니고 있습니다 이 회사에 개발자로 취직하긴했지만 이게 개발자로서의 옳은 커리어로 가고있는것이 맞나라는 의문이 생깁니다. 이 회사의 특징은 복지수준도 괜찮고 야근도 필수도 아니지만, si/sm기반의 이커머스 고객사의 개발수주를 요청받아서 인력투입을 하는 형식으로 개발을 하는데 문제는 2000년대 초반 혹은 1990년대 후반 정도되는 자바스크립트 프레임워크 프론트기술과 스프링 프레임워크를 사용하지만 5버전도 되지않는것으로 개발되어있는 회사솔루션을 이용하여 오로지 똑같은 솔루션으로만 이커머스 고객사의 수주를 받고 개발/운영하고 있습니다. 또한, 프론트쪽은 비슷하게만들어진 화면단을 복붙하는 수준이고 나아가봤자 css추가정도이며, 스프링에서의 개발은 화면단에서 던져주는 데이터들을 받아서 for문으로 돌려서 쿼리문에서 거의 모든 비즈니스 로직을 처리하는 수준입니다... 쿼리문을 굉장히 길게짜기 때문에 쿼리문 하나는 정말 잘할 자신이 있지만, 문제는 개발자로서의 기술 스택을 쌓아가는 것이 아니라 이커머스 업계의 상품, 주문, 배송과 같이 도메인 지식이 거의 업무에 주요한 부분을 차지하고 있기 때문에 그 도메인 지식을 오로지 같은 오래된 기술로만 녹여내는 업무가 주를 이룹니다. 또한, 백엔드로서의 개발자가 제가 정말 하고자하는 일이지만 회사에선 근 1년동안은 프론트 관련업무만 그것도 요즘 쓰는 기술도 아닌 구시대 프론트 기술로 업무를 받아서 하고있다는게 제일 큽니다.(소위, 물경력이라고 하지요) 3년차기때문에 제가 개발자로서의 옳은길이 무엇인지 확실하게는 모르지만 적어도 다른 개발사보다 지금 재직하고 있는 회사의 기술이 많이 떨어진다는것은 인지하고 있습니다. 회사의 잘못이 아니라 저의 커리어가 망가질까 걱정이 많습니다. 제가 다음 이직회사를 이커머스 관련 업계 회사라면 당연히 도움이 될수 있겠지만 제가 바라는 회사는 자사 솔루션을 개발해나가며 필요하다면 새로운 기술도 경험하면서 적용하여 단순히 회사에서 일 잘하는 개발자가 아니라 기술적으로 경험이 풍부한 개발자로서 인정을 받고 싶습니다. 위와 같은 경우라면 제가 이 회사에 정년까지 다닐게 아니라면 이직을 하는것이 옳은길일까요? 아니면 원래부터 개발자라는 직업이 한 업계에 들어가서 일을 하게되면, 도메인지식이 주업무를 이루고 기술적인것은 뒤쳐지더라도 따로 개발공부를 하여 연차를 쌓아나가며 이직을 하는것이 정석인 직업인걸까요? 현직자분들의 의견이 부탁드리겠습니다...

개발자

#이직

#백엔드

답변 1

댓글 0

조회 272

8달 전 · 익명 님의 질문

이직을 위해 뭘 해야할까요?

중소 si에 다니고 있고 언어는 아주 초반에 c#잠깐 그 이후론 자바 위주로 했고요 화면도 리액트,jsp 조금 그리고 웹스퀘어도 잠깐 다뤘었네요 si다 보니 가는 프로젝트마다 환경이 제각각이라서 뭐 하나 진득히 하진 못했어요 이직을 생각할 시기인데 사실 뭐부터 공부해야 할지 도저히 감이 안잡힙니다 비전공자 출신이라 cs지식 굉장히 부족하고요 솔직히 개발자가 아니라 코더라는 생각이에요 아직도 제가 뭘하는지 잘 모르겠어요 그냥 로직 짜는 것 밖엔 할줄 아는게 없네요 뭘 공부해야할까요? ㅠ 스프링 공부하면서 사이드 프로젝트를 해야할까요?ㅠ 사실 이직을 어디로 하고 싶은지도 모르겠어요 공공기관이나 공기업을 가고싶은데 티오가 너무 없더라고요... 변화해야하는데 갈피를 못 잡고 있습니다 ㅠ

개발자

#이직

답변 0

댓글 0

조회 64

9달 전 · 고지완 님의 질문

OAuth2 + jwt 환경 부하 테스트 방법에 대한 질문..

최근 성능 테스트의 중요성에 대해 알게 되어서 목표 성능치를 두고 부하테스트를 진행해보려는 계획에 있습니다! 테스트 툴로는 nGrinder를 사용할 생각인데요, 문제는 제 서버가 이메일 로그인을 지원하지 않고 oauth2와 jwt를 활용한 인증/인가 방식을 사용하는데 부하테스트 시 가상 유저에게 어떻게 accessToken을 발급해주어야 하는지에 대한 궁금증이 생겼습니다..! 제가 생각해본 방식들은 다음과 같습니다. 1. 실제 유저에 대한 accessToken을 하나 발급해두고 이를 고정값으로 사용한다. - 이 방식은 제일 편하지만 사실상 한명의 유저에 대한 시나리오만 테스트할 수 밖에 없고, 같은 유저에 대한 각종 캐싱된 데이터들로 인해 실제 상황과는 동떨어진 작업이 될 것 같아 채택하지 않았습니다. 2. FakeAuthServer와 같은 가상의 OAuth 서버를 만들어 로그인을 시도한다. - 구현하기는 어려워보이지만 그나마 가장 실제 서비스와 동일한 형태입니다. 하지만, 제가 테스트하려는 시나리오는 여러 요청에 대한 순차적인 테스트가 아닌 하나의 API가 얼마나 많은 부하를 견딜 수 있는지 보기 위한 테스트라서 굳이 로그인 과정을 테스트에 포함시킬 필요는 없어보입니다.. - 사실 하나의 API에 대한 테스트만 진행해도 괜찮은지 몰라서 이 방법을 버리지 못하고 있습니다 3. nGrinder의 테스트 스크립트에서 @BeforeThread에 jwt를 발급받는 로직을 작성해서 테스트 전 미리 토큰을 발급받아 요청한다. - 이 방식은 로그인 과정은 포함되어 있지 않고 이미 토큰을 발급받았다는 가정하에 하나의 API만 테스트하기 가장 적합한 방법이라고 생각이 되었습니다. - 번거롭지만 jwt를 직접 생성해주기 위해 jjwt 라이브러리를 nGrinder에 포함시켜야 될 것 같습니다 - 하지만 이렇게 스크립트에서 토큰을 발급해주는게 맞는지 실무에서도 이런식으로 사용하는 경우가 있는지 궁금합니다.. 처음 부하 테스트를 적용하려고 하는데 oauth2 + jwt로만 구성된 예제가 보이지 않네요 ㅠㅠ 어느 방법이 가장 적절한지 혹은 더 나은 방법이 있는지 조언을 구하고자 질문 남깁니다!

개발자

#ngrinder

#oauth

#jwt

#부하테스트

#성능테스트

답변 0

댓글 0

조회 125

9달 전 · 고지완 님의 새로운 댓글

권한 관리 AOP와 영속성 컨텍스트 문제

프로젝트를 진행하던 중, 해당 펫이 api를 요청하는 유저가 소유하고 있는 펫이 정말 맞는지 확인하는 권한 검사 로직 등이 중복으로 발생해서 이를 비즈니스 로직에서 분리하고자 스프링 AOP 기술을 활용해보려고 했습니다. 동작은 잘 되지만.. Pet을 조회하는 쿼리가 중복해서 2번이 발생하더군요. 저는 OSIV가 꺼져있더라도, 비즈니스 레이어에서 같은 트랜잭션 내에서 동작하기에 AOP에서 조회한 엔터티도 같은 영속성 컨텍스트에서 관리될 거라고 생각하고 위처럼 작성했는데 어디가 문제인지 모르겠어서 도움을 부탁드립니다.. ㅠㅠ 혹시 가능하시다면 현업에서는 중복되는 권한 체크 로직을 어떻게 관리하시는지도 알려주시면 큰 배움이 될 것 같습니다!

개발자

#aop

#spring-boot

#jpa

#spring

#java

답변 1

댓글 1

조회 27

9달 전 · 익명 님의 새로운 댓글

신입이 욕심이 많은 건지 궁금합니다

저희 시스템에는 옛날 옛적부터 내려오던 고질적인 문제가 있는데요.. SI 회사입니다 고객이 주기적으로 문의를 넣을 정도로 불편한 건데 아무도 고칠 생각을 하지 않고 그냥 못 고친다고만 했던 모양이예요. 그래서 신입인 저한테 넘어왔어요 정확히 얘기하면 넘어왔다기 보다는 이 시스템을 하는 사람이 저밖에 없고 저한테 문의가 들어왔으니 다른 사람들이 하던 것처럼 조용히 넘어가거나 아님 고치거나 둘 중 하나인거죠.. 전 사수도 동료도 일도 없이 방치 당하는 중이어서 이런 거에라도 재미를 붙이지 않으면 자꾸 퇴사하고 싶어지는 상태라 일단은 계속 파는 중인데요 처음에는 맘대로 하라고 하셨다가 개선이 된 부분을 말씀드리니까 너무 빨리 고치고 있다. 신입이 고쳐버리면 고객이 오해할 수 있다 이렇게도 얘기하시고 어디서 사이드 이펙트가 나올지 모르니 그냥 안 고치는 게 나을 수도 있다고 얘기하시네요 파다 보니 왜 그렇게 얘기하셨는지 알 것 같기는 한데(이제 쓰는 사람이 있나 싶을 정도로 오래된 오픈소스 라이브러리..연관된 로직을 싹다 봐야하고 하나 하나 테스트도 해야 하고..) 그렇다고 못 할 일은 아닌 것 같거든요 상용 환경에 반영하는 건 바라지도 않고 스테이징에라도 올려보고 싶어요. 어차피 프론트 70 백 30 이 정도로 프론트 쪽 비중이 높은 일이어서 제 이력에 쓸 수 있을지도 의문인데(백엔드 지망입니다) 좀 의미 있는 일을 하고 싶은 것 뿐입니다.. 다들 반대하는 이유가 분명히 있는데 제가 계속 이러는 건 욕심일까요? 제가 신입이어서 이 일의 복잡함을 잘 모르는 걸까요? 물론 제가 수정한 코드를 봐줄 사람은 아무도 없습니다..

개발자

#spring

#jquery

답변 2

댓글 4

추천해요 1

조회 414

10달 전 · 익명 님의 질문 업데이트

Nextjs14 서버 컴퍼넌트 JWT 갱신 방법 문의

안녕하세요 NextJS14 에서 JWT 로그인 방식으로 프로젝트 진행중에 있습니다. 현재 AccessToken 만료시 재 갱신하는 로직을 하면서 해결하지 못하는 내용이 있어서 문의 드리립니다. 서버 컴포넌트와 클라이언트 컴포넌트에서 갱신된 AccessToken 을 공유 하는 법에 대해서 어떻게 처리 하셨나요? - app router 사용 - accessToken, refreshToken 쿠키 사용 - fetch 를 이용하여 API 호출 아래 테스트 내용으로 서버 컴포넌트에서 AccessToken 만료되어 갱신되는 경우 클라이언트로 쿠키를 갱신해줄 방법을 모르겠습니다. 너무 CSR 구조로 생각하는거 같기도해서, 이런 경우 어떻게 토큰을 현행화 해서 사용하는지 문의 드립니다. 별도 가이드 문서를 더 찾아보면 서버 컴포넌트에서는 쿠키를 사용하지 말라는 글도 보여서, 방향성을 잘못잡고 있는 느낌도 들고 있습니다. 많은 조언 부탁드립니다!! 테스트 케이스) 1. 서버 <-> 클라이언트 (에러) - 서버 컴포넌트에서 백엔드 API 호출 -> 토큰 만료 -> AccessToken 재 갱신 API 호출 -> 쿠키 set -> 클라이언트에서 백엔드 API 호출(당연히 클라이언트에서는 쿠키가 갱신안되서 에러) 2. 서버 <-> 서버(성공) - 서버 컴포넌트에서 백엔드 API 호출 -> 토큰 만료 -> AccessToken 재 갱신 API 호출-> 쿠키 set -> 서버 백엔드 API 호출 3. 클라이언트 <-> 클라이언트 (성공) - 클라이언트 컴포넌트에서 백엔드 API 호출 -> 토큰 만료 -> AccessToken 재 갱신 API 호출-> 쿠키 set -> 클라이언트 백엔드 API 호출

개발자

#nextjs

#jwt

#accesstoken

#refreshtoken

#nextjs14

답변 0

댓글 0

조회 100

10달 전 · 김영민 님의 새로운 답변

비밀번호검증 질문 (백엔드 프론트엔드 연동 )

저는 컴퓨터공학과 학생이지만 개발이 처음입니다. 프론트엔드를 맡아 리액트 네이티브 앱을 개발하는 중입니다. 기초 지식은 있지만 학교 수업만 들어봤기 때문에 실제로 서비스를 어떻게 만드는지는 몰라, 이번 프로젝트에서는 사실상 GPT가 다 짜줬다고 해도 무방한 정도였어요. 프로젝트가 거의 다 끝나가는데, 백에서 비밀번호에 암호화를 걸면서 수정사항이 생겼습니다. if (existingProfile.password !== profile.oldPassword) { Alert.alert('비밀번호 오류', '기존 비밀번호가 올바르지 않습니다.'); return; } 기존에는 위와 같이 단순하게 비교를 했었는데, 백에서 암호화가 되어버려서 저런 단순한 로직을 사용할 수 없게 되었습니다. 대신 백에서 currentPassword(클라이언트에서 입력받은 비밀번호), getPassword함수(암호화되지 않은 사용자 계정의 기존 비밀번호를 받아오는 함수)를 bcrypt를 이용해서 알아서 다 처리하도록 코드를 다 짜주셨다고 하더라고요. 백엔드 코드는 사진으로 올려두었는데, if (passwordEncoder.matches(currentPassword, user.getPassword()))를 통해서 두 비밀번호가 일치하는 경우에만 정보가 수정되도록 코드가 작성되어 있습니다. 로직은 충분히 이해가 가는데, 이를 프론트엔드 코드에 어떻게 적용해야하는지 전혀 모르겠습니다. 구글링을 어떻게 해야 이런 경우의 풀이가 나오는지도 모르겠고, 찾아봐도 백엔드에서 암호화를 하는 방법이나 해시를 하는 방법 같은 것만 나오네요. 이 문제를 해결하기 위해 일주일 내내 노트북만 붙잡고 있었는데 멘탈만 부서지고, 코드는 아무것도 나아지지 않았습니다. 부디 많은 조언과 도움 부탁드립니다.

개발자

#비밀번호

#프론트엔드

#react-native

#front-end

#javascript

답변 1

댓글 0

조회 187