#fa

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

한 달 전 · 백승훈 님의 답변 업데이트

경력 4년차 하지만...

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

개발자

#이직

#백엔드

답변 2

댓글 0

조회 225

한 달 전 · Luke 님의 질문

What Should I Do Here?

I’m at a point in my career where I’m seriously considering making a switch to a field I’m genuinely passionate about. The problem is it’s not the most financially secure or socially validated option. On the other hand, my current job is stable and pays well, but I don’t feel fulfilled or excited about what I’m doing. I’ve been reading stories about people who took the leap into something they love and ended up thriving, but I also know that not everyone lands on their feet. That makes me hesitate. I have responsibilities and can’t afford to make a reckless decision. So I’m curious how have you personally approached this kind of decision? Have you prioritized your passion or stuck with a practical choice? Or did you find a way to do both? What factors helped you make your decision, and what do you wish you knew earlier? I’d really appreciate any honest insights, lessons learned, or even regrets. I think hearing real experiences from others in the community would help me (and maybe others here too) gain perspective. Thanks in advance!

PM/PO/기획자

#career

답변 0

댓글 0

조회 21

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

(설문요청) 현직 SW개발자분들께 요청드립니다. 커피쿠폰 있습니다.

안녕하십니까? 저는 현재 한양대 박사과정 평생학습학과에서 소프트웨어 개발자들의 자기주도학습과 행동 특성을 연구하고 있습니다.  본 설문요청이 불편하시다면 미리 정중히 사과드립니다. 업무에 매우 바쁘신 점, 잘 알고 있지만 잠시 머리를 식히는 기분으로 평소에 생각하신 바를 간략하게 표시해 주시면 감사하겠습니다. (약 5분 소요) 응답해주신 내용은 소중하게 연구하여 개발자 분들과 조직에 도움이 되는 논문으로 보답드릴 것을 약속드립니다. 그리고 성실히 응답해주신 분들께는 추첨을 통해 50명에게 약소하지만 커피 쿠폰을 보내드리겠습니다. 그럼 화창한 5월 여러분께 건강과 행복이 가득 넘쳐 나길 기원드립니다. 감사합니다! 설문링크:  https://docs.google.com/forms/d/e/1FAIpQLSdY7VsxbyaBNoTg7cWufdwwJqGbnzJTELTqJkGROavz-Ps9NQ/viewform?usp=sharing

개발자

#sw개발자

#설문요청

답변 0

댓글 0

조회 122

2달 전 · 최승운 님의 질문 업데이트

소프트웨어 개발자 설문

안녕하십니까? 저는 현재 소프트웨어 개발자들의 행동 특성이 직무에 미치는 영향에 대해 연구하고 있습니다. 업무에 매우 바쁘신 점, 잘 알고 있지만 잠시 머리를 식히는 기분으로 평소에 생각하신 바를 간략하게 표시해 주시면 감사하겠습니다. (약 5분 소요) 바쁘시더라도 빠뜨려지는 문항이 없도록 끝까지 응답 부탁드리며, 응답해주신 내용은 소중하게 다룰 것을 약속드립니다. 그럼 화창한 봄, 건강과 행복이 가득한 시간 되시기 바랍니다. 감사합니다. 설문링크: https://docs.google.com/forms/d/e/1FAIpQLSdY7VsxbyaBNoTg7cWufdwwJqGbnzJTELTqJkGROavz-Ps9NQ/viewform?usp=sharing

개발자

#설문요청

#자기주도학습

#직무성과

답변 0

댓글 0

조회 148

2달 전 · Tiradadecartasgratis 님의 질문 업데이트

Tiradadecartasgratis

Discover the best love stories across genres – curated and reviewed for you. Address: 27 Mai Thi Luu, Ward Da Kao, District 1, HCMC Phone: 0903978979 Email: contact@tiradadecartasgratis.biz Website: https://tiradadecartasgratis.biz/ Social https://www.facebook.com/tdcgratis/ https://www.youtube.com/@tdcgratis https://x.com/tdcgratis https://www.pinterest.com/tdcgratis/ https://www.linkedin.com/in/tdcgratis/ https://tdcgratis.tumblr.com/ https://vimeo.com/tdcgratis https://www.reddit.com/user/tdcgratis/ https://soundcloud.com/tdcgratis https://band.us/@tdcgratis https://500px.com/p/tdcgratis?view=photos https://cfgfactory.com/user/311721 https://www.motiondesignawards.com/profile/5110 https://contest.embarcados.com.br/membro/truy%e1%bb%87n-tiradadecartasgratis/ https://smf.rcweb.net/index.php?action=profile;u=78728 https://careerly.co.kr/qnas/10213

개발자

#tdcgratis

답변 0

댓글 0

조회 69

3달 전 · 김현균 님의 질문

클린아키텍처에서 Application 레이어는 꼭 필요할까요?

클린+레이어드 아키텍처를 공부하면서 Usecase와 Facade 같은 Application 레이어에 대해서 처음 알게되었습니다. 처음엔 하나에 모아서 service들을 호출할 수 있네? 좋잖아? 라는 생각이었는데, 실제로 코드를 작성하다보면 단순 서빙만을 하는 경우가 더 많아서 복잡성만 증가하는 느낌을 받은 적이 있습니다. 저는 개인적으로 MSA 에서는 Event로 도메인간 연결이 이뤄지니까 Application 레이어가 오히려 코드 복잡성만 높히지만, Monolithic에서는 유의미하게 동작하는 것 같습니다. 그래서 Application 레이어는 아키텍처에 따라 선택될 수 있지 않을까? 라고 생각이 들더라고요. Application 레이어의 유무가 꽤나 논쟁이 있는 주제라고 들었는데, 여러분은 어떻게 생각하시나요?

개발자

#클린아키텍처

#application레이어

#backend

#msa

#facade

답변 0

댓글 0

조회 106

3달 전 · 익명 님의 질문

💌2분 짜리 설문조사 하시고 커피 받아가세요!💌

안녕하세요! 저희는 사용자 맞춤형 향수 추천 서비스를 제공하는 퍼퓨미 플랫폼을 개발 중입니다. 이 서비스는 여러분이 원하는 향수를 쉽게 찾을 수 있도록 도와주며, 향수 공방을 찾아서 맞춤형 향수를 제작할 수 있는 기능도 제공합니다. 이 설문은 퍼퓨미의 향수 추천 기능과 향수 공방 서비스에 대한 여러분의 의견을 듣기 위해 진행됩니다. 여러분의 소중한 의견이 향수 추천 서비스를 더 나은 방향으로 발전시키는 데 큰 도움이 됩니다 🙂 설문은 약 2분 정도 소요되며, 참여해 주시면 감사하겠습니다! ✔️ 설문 기간: 4월 5일 (토) ~ 4월 7일 (월) ✔️ 예상 소요 시간: 2분 내외 ❗️설문에 응해주신 분들 중 총 10분께 추첨을 통해 컴포즈커피 아메리카노 기프티콘을 발송해 드립니다 ❗️ 여러분의 소중한 의견이 맞춤형 향수 추천 서비스의 방향성을 결정하는 데 큰 도움이 됩니다 🙂 많은 참여 부탁드립니다! 구글 폼 링크 : https://docs.google.com/forms/d/e/1FAIpQLSckZ2pa7fgJvnOfJivqHgKtvVbjL7NBDVvw9sZTjnmIw5-aqA/viewform?usp=dialog

PM/PO/기획자

#설문조사

#조사

#기획

#구글폼

#페인포인트

답변 0

댓글 0

조회 26

3달 전 · 문종호 님의 새로운 답변

4년차입니다. 이런 경우 이직은 어떻게 해야 할까요?

만 3년 11개월 입니다. 입사초기에는 java/spring/vue.js 로 웹 개발 진행하다가 이후로 python, django, fast api 등 프로젝트 진행했습니다. 프레임워크도 그저 기본적인 부분만 한 것 같습니다. 간단한 관리자 정도? 근데 회사가 경영악화로 곧 망할 것 같아요. 어쩔 수 없이, 이직 준비하려고 보니 해당 언어/프레임워크로 3년 이상 요건으로 걸려있네요. 이것저것 해본 것도 경험이라 할 순 있겠지만 지금 같은 시장에선 경쟁력이 없는 것 같습니다. 분명 1년 정도 까지는 물경력은 되지 말자고 자기계발하고 그런 생각이었는데 현실과 현재에 안주하고 있던 저를 보니 후회 되네요. 조언 부탁드립니다. 선배님들.

개발자

#이직

#물경력?

#경험

#여러가지

#깊이

답변 1

댓글 0

조회 176

4달 전 · 익명 님의 질문

iOS 웹뷰에서 getUserMedia 호출 시 마이크 권한 관련 질문입니다.

안녕하세요 React를 이용하여 웹뷰 기반 애플리케이션을 제작 중입니다. 다름이 아니라 리액트 코드 내에서 마이크 권한 획득 및 녹음 기능이 있는데요, navigator.mediaDevices.getUserMedia 메소드로 권한 획득과 녹음을 진행하고 있습니다. 그런데 최초 접속 시에는 위 메소드를 사용하는 컴포넌트가 렌더링 될 때 애플리케이션 자체(네이티브)에서 마이크 권한 여부를 물어보는데요 "앱 이름"에서 마이크 권한을 요청합니다. 라고 노출이 됩니다. 그런데 문제는 여기서 허용을 했음에도 불구하고 녹음을 진행하려고 하면 "웹뷰 도메인"에서 마이크를 사용하도록 허용하겠습니까? 라고 이중으로 권한을 확인하게 됩니다. Safari 자체적으로 막는거라 정상적인 동작인지, 아니면 다른 옵션이 있는지 모르겠네요ㅠㅠ 해결 방법이 있을까요?

개발자

#react

#swift

#webview

#mic-permission

#마이크권한

답변 0

댓글 0

조회 66

4달 전 · 익명 님의 질문

웹소켓 + Stomp로 채팅 기능을 구현하며

RabbitMQ를 도입하였습니다. 도입의 이유는 스프링 내장 메시지 브로커를 이용하게 되면 인메모리 기반의 동작 방식으로 인해 서버 문제 발생 시 메시지가 유실되거나 확장에도 제한이 있다고 판단하여 도입하였습니다. 현직자 분들이 보기에 이 이유가 적합한 근거가 될까요? 추가로 JMeter로 RabbitMQ를 사용했을 때와 사용하지 않았을 때의 성능을 비교했는데 사용자 100명 기준 성능도 사용하지 않았을 때가 우세했고, RabbitMQ를 사용했을 때는 오히려 아래와 같은 오류가 가끔 발생하며 메시지또한 약 90퍼센트 정도만 저장된걸 확인할 수 있었습니다. 무엇이 문제이며 해결 방안이 있을까요?? java.net.SocketException: Connection reset at java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:394) ~[na:na] at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:426) ~[na:na] at io.netty.buffer.PooledByteBuf.setBytes(PooledByteBuf.java:255) ~[netty-buffer-4.1.114.Final.jar:4.1.114.Final] at io.netty.buffer.AbstractByteBuf.writeBytes(AbstractByteBuf.java:1132) ~[netty-buffer-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.socket.nio.NioSocketChannel.doReadBytes(NioSocketChannel.java:356) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:151) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) ~[netty-transport-4.1.114.Final.jar:4.1.114.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.114.Final.jar:4.1.114.Final] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.114.Final.jar:4.1.114.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.114.Final.jar:4.1.114.Final] at java.base/java.lang.Thread.run(Thread.java:842) ~[na:na]

개발자

#채팅

#구현

답변 0

댓글 0

조회 83

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

조회 65

5달 전 · 이성원 님의 새로운 답변

아마존 Ec2 성능

개인적으로 사용할 테스트용서버를 구하고 있습니다. 아무래도 개인적으로 상용하기위한 서버이기 때문에 월에 만원 안쪽으로 사용가능한 서버를 찾고 있으며 Ec2의 경우는 최초1년 무료로 사용가능한것으로 알고 있어 고려중입니다. 혹시 Ec2를 사용해본 경험이 있으신분들 중에 성능에 대해서 문의드립니다. Docker기반 파이썬 fastAPI서버 1기 Java Spring 서버 1기 (jar 기동 고려중이며 추후 Doker로 올릴 가능성 있음) DB서버 1기 (Docker 기반 postgerSQL 고려중) 일단 생각나는것은 이렇게 3가지 입니다. 아직 외부접속같은것은 필요 없기에 아파치와 같은 설정은 생각없습니다. Ec2가 충분히 위 사양을 버텨줄까요? 물론 요청이 많아지면 힘들어지는건 당연할듯합니다만, 일 요청건수 100 ~ 1000건 이내로 고민중입니다.

투표

개발자

#amazon

#ec2

#server

답변 2

댓글 1

조회 1,280

2달 전 · 엉뚱한밀크언니 님의 새로운 답변

선배님들의 고견을 여쭙고자 합니다.

안녕하십니까!!... ​ 저는 최경호 라고 하며, 현재 울산에서 MRO소모성 자재(건설업) 납품업체 에서 건축자재 및 공구 또, 산업.안전용품 의 유통회사 에서 배송납품 기사 로 일하는 40대 남성 입니다. ​ 건설업 MRO 라는 키워드 로 검색을 하게되었고, 정확한 내용은 아래 링크 를 보시면 더 자세하실 겁니다. https://blog.naver.com/mmoonhs91hy/221934607016생활안전시장_안전용품 ​ 다름이 아니오라, 제가 현재 일하고 있는 회사는 울산지역 에서 S-oil 이나 금호석유화학, SK에너지 등의 회사의 협력업체들 에게 공구 및 작업복 흔히 말하는 산업.안전용품 기타 관련용품들 을 배송.납품 하는 업무를 하고있습니다. ​ 제가 문의글을 올리게 된 이유는, ​ 울산의 공구상가 에서 (사업자 를 가진 회사에게 도매 가격으로 판매를 하고, 개인고객 에게는 소매가격으로 판매를 하는) 업장을 방문해서 물건을 구입후 에 배송을 하고 있습니다. 여러 카테고리 가 있다보니. 품목에 따라 다른 업체들을 방문하여 물건구입 후 배송을 하는데, 저희 회사자체 의 창고에서 물건을 찾아서 가는 경우는 거의 없습니다. (원체 많은 품목들이 있고, 판매를 될지 안될지 모르는 제품들이기에 창고에 미리 갖추고 있을 여유는 없습니다.) ​ 또한 KEP(코리아이플랫폼) 라는 MRO회사의 네트워크 에 가입이 되어있고-실제 배송.납품건이 많지는 않은것 같습니다. 크레텍 책임&웰딩 이라는 대구에 본사를 둔 회사에서 공구 관련 품목을 납품 받고, 기타 타지역에서 화물로 물건을 받아 그때그때 주문에 맞추어서 발주를 하고 물건을 받아,판매하고 있습니다. KEP 나 서브원 같은 대기업 에서 운영하는 MRO업체들 에게서 물건을 납픔받아 재판매를 하는 식 입니다. 구비하고 있는 기계? 를 일정기간 임대 하고 비용을 받는 부분도 있는것 같습니다. ​ 제가 대표님 에게 듣기로는, 울산 이라는 지역에서 같은 업을 하는 경쟁사 가 약250여개 가 된다고 합니다. 아주 오래된...지금 의 7~80대 어르신 들이 예전에 하던 유통방식 에서 달라진것이 없는 상황 입니다. (물론 연합을 해서 이 물건은 이 가격에 팔자! 라는 방식은 잘 모르겠으나, 공구상가 주변에 모여들어 사업자가 있는 사람에게는 도매가로 판매하고 개인에게는 소매가 로 판매를 하는..) ​ 또한, 건설 프로젝트 를 대기업에서 입찰을 해서 공사를 시작하게 되면 그 협력업체 사람들과의 인맥 과 또 그를 통한 다른 인맥을 만들며 공사에 참여하여 자재를 납품 합니다.. 인맥이 없으면, 장사를 못한다! 라는 그런 이야기 도 들은것 같습니다. ​ 이런 현 상황에서 소상공인들이 대부분 이다보니, 정부에서 기관을 만들어 지원해 주는 경우도 있는데 대부분이 마케팅 과 온라인 유통 에 관련된 교육들이고, 사업자 가 있어야 참여를 할수가 있더군요.. ​ 온라인 유통에 대해 아는것이 없습니다.. 전문성 을 어필하기 위해 홈페이지 에서 구독서비스 를 만들고 공구나 기타자재 들도 풀필먼트 라는 물류시스템을 빨리 갖추어야 한다! 라는 이야기를 들었습니다만... ​ 홈페이지 에서 클릭해서 장바구니 담고 택배로 물건 보내준다.. 건축자재 들이 원체 부피가 크고 무게가 많이 나가다보니, 그게 가능한가? 이런 수준의 생각밖에는 못하고 있습니다. ​ 산업.안전용품 를 유통하는 회사로써, 유통업,서비스업 의 범주에 포함된다고 생각합니다만, ​ 이 업계에서 저희 회사의 포지셔닝 부터 찾아야 한다고 생각을 하고, 포지셔닝 을 찾은후에 다른 경쟁사 와 다른 저희 회사만의 KSF(Key success factor) 를 만들수 있다고 생각합니다. ​ 저의 짧은 생각으로는, 서비스업 의 특징은 , 고객이 이미 가지고 있는 기대치 를 넘어서는 무언가를 제공해 줄수 있어야 한다고 생각 합니다. 정확하고 빠른 배송 과 친절함? 이런 부분은 누구나 다 생각하고 가지고 있다고 생각 합니다. ​ 유통업 에서 포지셔닝 을 찾기위해 어떤 부분들이 고려되어야 하는지? 저희만의 KSF를 가지기 위해 무엇을 할수있는지? 이 부분에 대해 여쭙고자 합니다. ​ 저는 타 경쟁사 와 다른 저희만의 독점성 을 가지기 위해 개인적으로 해외소싱,구매 를 생각하고 있습니다. 그 이유는 한국에서 산업,안전용품 은 보급품 이라는 이미지 가 있다고 생각을 하고있으며, 품질적인 부분은 아직 국제사회에서 경쟁을 할 정도는 아니다.라고 알고있습니다. ​ 그리고 항상 편안함 과 안전 이라는 부분이 가장 우선시 되기에. 타업계에 비해 품목의 트렌드 에 영향을 많이 받지는 않는다고 생각합니다. ​ 그러나 중소기업 의 부족한 부분을 채워주기 위해. 이미 많은 대기업들이 MRO를 하기에, 해외소싱 이 저희만의 KSF가 되어줄수 있을지에 대해서 더 많은 고민이 필요하다고 생각합니다. ​ 현재 국내에 유통이 되지않는, 그런 품목이 필요하다고 생각만 하고있습니다. 많은 전문가 분들은 산업,안전용품 과 공구 등은 해외소싱 및 구매를 할 만한 아이템이 이젠 거의없고 또 아이템 마다 너무다른 방식들이 많아서 그다지 좋은 방법은 아니라고 합니다. ​ 소모성자재 이니 만큼 건설업 만이 아닌. 자동차 ,조선업 ,입찰,항공 또한 조달..등의 이야기 와 온라인 유통에 대해 많은 지식을 갖추라고 이야기 하십니다. ​ 제가 얻은 답변 중 회사의 일원으로써 갖추어야 하는 능력은.. AI UI/UX 설계 데이터 분석 어디서 부터 어떻게 시작해야 하는지 어떤 커리큘럼 을 가지고 따라갈수 있을지 문의 드리고자 합니다. 제가 현재 많은 지식을 갖추고 있는 사람이 아닌지라, 어리석은 우문 만 드리게 되었습니다만, 여기 계신 분들의 고견을 부탁 드려도 될런지요?

PM/PO/기획자

#mro

#소모성자재

#납품업

답변 1

댓글 0

조회 97

7달 전 · 노원재 님의 질문 업데이트

ReactNative Xcode 16. RCTAppDelegate.h not find

안녕하세요? 에러로 고통받다가 커리어리에 남겨봅니다. ReactNative 프로젝트로 테스트플라이트 배포상태에서 3주가 지나 지난주 Xcode 16으로 업데이트 되었는데요. 그 뒤 ios 버전, 라이브러리 버전 문제는 해결했는데. Xcode 에서 build /ios/프로젝트명/AppDelegate.h 파일에서 #import <RCTAppDelegate.h> 파일을 찾을 수 없다고 나옵니다. 사양 1. M2, Sequoia 2. react-native : 0.74.3 3. Xcode 16.1 문제 해결을 위해 시도한 방법 입니다. 1. #import <React/RCTAppDelegate.h> 바꿔봄 2. #import "AppDelegate.h" 바꿔봄 3. node_module/react-native/React/Base/에서 헤더파일 찾아봄 -> 없음 4. node_module/react-native/ReactCommon/에서 헤더파일 찾아봄 -> 없음 5. 대체할 수 있는 방법 찾아봄 GPT에서 제안한 방법으로 수정 -> 결과 : 파일 찾을 수 없음 #import <UIKit/UIKit.h> #import <React/RCTBridgeDelegate.h> @interface AppDelegate : UIResponder <UIApplicationDelegate, RCTBridgeDelegate> @property (nonatomic, strong) UIWindow *window; @end 6. Xcode에서 경로를 추가해봄 -> 결과 : 파일 찾을 수 없음 6-1. Xcode > BuildSetting > search header 에 경로를 추가했습니다. "$(SRCROOT)/../node_modules/react-native/React", "$(SRCROOT)/../node_modules/react-native/ReactCommon", "$(SRCROOT)/../node_modules/react-native/ReactCommon/cxxreact", "$(SRCROOT)/../node_modules/react-native/Libraries", 6-2. Xcode > BuildSetting > Frame search header에 경로를 추가했습니다. "$(inherited)", "$(SRCROOT)/../node_modules/react-native/React", "$(SRCROOT)/../node_modules/react-native/ReactCommon", 7. pod 재설치, react-native 재설치, 캐시 삭제 및 라이브러리 업데이트 등.. pod.lock, Podfile, node_module, build 파일, DerivedData 폴더 삭제 후 전부 재설치. pod install --repo-update 헤르메스 사용 설정 및 use_frameworks! :linkage => :static 설정 확인. 8. react-native 최신버전(0.76.3)으로 재설치 참고 사이트 및 GPT, Monica 질의응답 공유 링크 https://github.com/facebook/react-native/issues/36611 https://stackoverflow.com/questions/75822104/rctappdelegate-h-file-not-found https://chatgpt.com/share/674e6dcf-89f8-800f-b0e6-4fa2fe58419b https://monica.im/share/chat?shareId=CQ18cvvPvsMc0r3U ** 유의미한 정보를 주신분께 감사의 마음으로 많지는 않지만 스타벅스 커피쿠폰을 드립니다 살려주세요..

개발자

#reactnative-run-ios

#xcode

#appdelegate.h

답변 0

댓글 0

조회 226

7달 전 · 백승윤 님의 새로운 답변

AI/ML 엔지니어, 데이터 엔지니어 취업 고민

안녕하십니까 이번 학기를 마지막으로 졸업을 앞둔 대학생입니다. 저는 경영학 전공으로 데이터 분석을 하다가 데이터 엔지니어링, ML 엔지니어링 까지 관심이 확장되었습니다. 그에 맞게 데이터 분석이나, 데이터 파이프라인, CNN 객체 인식 등 관련 프로젝트를 하면서 흥미를 많이 느꼈습니다. (경험: python, C++, AWS, GCP pytorch, kafka, Elasticsearch, langchain, faiss 경험) 이번 하반기에는 백엔드, 데이터 분석, MLOps 직군으로 금융권이던 SI 이던 모두 지원하였습니다. 서류 합격은 약 30프로 정도 되었지만 코딩 테스트, 인적성 검사 단계에서 통과하지 못했습니다. 이번 하반기를 경험하면서 백엔드가 아니라 AI 개발, MLOps, 데이터 엔지니어링 직무를 하고 싶어졌습니다. 이 세가지 직무에 취업하기 위해 석사를 요구하는 회사가 대부분임을 보았습니다. 그에 따라 컨텍없이 AI 대학원을 지원하였는데 입학만 합격한 상태입니다. 그리고 관심 분야(LLM, 추천시스템)의 교수님과 면담을 앞두고 있습니다. 1. 저의 고민은 대학원에 들어가는 것이 좋은 선택일지, 아니면 다음 상반기를 제대로 준비하고 안된다면 작은 회사에서 부터 경력을 빨리 쌓는 것이 좋은 방법일지 고민입니다. 물론 대학원에 들어간다면 열심히 할테지만, 갑작스럽게 결정한 만큼 많은 것을 얻고 나올 수 있을지, 시간만 허비하는 게 아닐 지에 대해 고민이 됩니다. "도피성으로 대학원을 들어가서는 안된다." "대학원에서 배운것이 실무에 쓰이는 일이 생각보다 없고 빨리 현업에 뛰어들어 경력을 쌓는게 더 유리하다." 등의 말을 들어보니 어떤 생각과 자세를 가지고 선택하는 것이 좋을지 고민입니다. 2. 학사 비전공자의 신분으로 이쪽 분야에 취업할 수 있을지 고민입니다. 물론 이쪽 분야의 연합동아리, 교육프로그램 등을 통해 프로젝트 경험이 있지만, 학문적으로는 독학한 것이 전부인지라 채용하는 입장에서 저를 어떻게 생각할지 궁금하네요. 3. 현재 싸피라는 교육 프로그램도 생각 중입니다. 싸피를 통해서 부족한 알고리즘, Spring, java 부분을 공부할 수 있고, 취업하는 과정에서 많은 정보와 기회 측면에서 도움이 될것 같은데 어떻게 생각하시는지도 궁금합니다. 돈을 많이 버는 것이 정말 좋지만, 돈의 욕심보다는 아직 젊은 만큼 원하는 업무를 통해 커리어를 쌓고 싶은 맘이 더 큽니다. 물론 아직 세상을 너무 모르는 것도 있습니다 ㅎㅎ 긴글 읽어주셔서 정말 감사합니다.

개발자

#진로

#신입

#신입-개발자

#대학원

#인공지능

답변 1

댓글 0

조회 334

7달 전 · 익명 님의 새로운 답변

리액트에서 브라우저 Intersection Observer 사용 질문,

안녕하세요, 채팅 관련 프로그램을 개발하고 있습니다. 다름이 아니라 Intersection Observer를 통한 화면 최적화를 진행하고 있습니다. 원하는 최적화 방식은 isIntersector의 true/false 여부를 통해 화면에 메시지 컴포넌트를 제공하고 있습니다. 동작은 정상적입니다. 그런데 문제가 있습니다. 부모에 Intersection Observer를 두나 자식에 Intersection Observer를 두나 아래 2가지 버그가 동일하게 나타납니다. 1. 다소 긴 채팅 또는 무거운 채팅 메시지는 화면 영역에 나타났음에도 isIntersector가 가끔 false 인경우가 있습니다. 그래서 부모가 높이는 가지고 있으나 내용이 빈 경우가 종종있습니다. 2. 메시지가 화면에서 딱 사라지는 순간 isIntersector가 무한 루프 되면서 true/false를 번갈아 가면서 반환합니다. 브라우저는 엣지입니다. 크롬은 불가능합니다. 1번 같은 경우는 산발적으로 발생하고, 2번은 저 상태가 되면 무조건 발생하는 에러입니다. 검색을 이리저리 해봤는데 도통 해결방법이 나오지 않아 여기에 문의드립니다.

개발자

#react

답변 1

댓글 0

조회 26

7달 전 · 박민철 님의 새로운 댓글

부트 캠프 이후, 로드맵 고민입니다.

안녕하세요, 삼성청년SW아카데미 11기 Python 비전공반 출신 개발자입니다. 업계에서는 실력있는 머신러닝 엔지니어를 원해, 제가 교육동안 AI 모델을 서비스에 적용시키는 수준으로는 취업이 많이 어려워, 진로를 고민하고 있습니다. (YOLO 모델 사용, Spring-FastAPI 통신 등) 입사를 희망한다면, 머신 비전쪽을 희망합니다. 웹 개발 프로젝트를 진행하면서, 프론트엔드의 레이아웃 디자인이나 동적 컴포넌트등으로 다양한 경험을 선보일 수 있는 부분에서 프론트엔드 개발을 희망했습니다. 수료가 곧이고, 하반기 인턴 및 채용공고를 바라보며, 꾸준히 성장하고 싶은 마음과 취업에 대한 압박때문에 질문글을 작성해봅니다. 제 개인적 성장도 원하지만, 20대 후반에 접어들며 현재는 취업이 우선이라고 생각돠어 글 남깁니다. 현직자님들의 현실적인 답변 부탁드립니다.

개발자

#취업

#프론트엔드

#머신러닝엔지니어

답변 1

댓글 1

조회 358

8달 전 · jspark 님의 질문

기업에서 사용하는 자연어 처리 모델에 대한 궁금증이 있습니다.

현재 취업준비생인데 자연어 처리 분야로 목표를 잡고 있습니다. 기업은 대기업이 아니더라도 중소기업, 스타트업 다 생각 중에 있습니다. 자연어 처리 쪽에 궁금한 점이 생겨 질문을 남깁니다. 기업들의 자격조건들을 보면 pytorch나 tensorflow 등 사용 경험이 나왔습니다. 보통 개인적으로 학습할 때는 pytorch나 tensorflow 등을 사용해서 LSTM 같은 모델들을 직접 짜보는 경험들을 하지만 요즘 프로젝트를 진행하면 GPT, Gemma, Huggingface 등 이런 모델들을 불러와서 파인튜닝하고 평가할때만 pytorch를 이용해서 하는 거 같습니다. 실제로 기업에서는 직접 LSTM 같은 모델들을 설계하여 사용하는 지 그 정도 수준의 pytorch 수행능력을 가져야 하나요 아니면 외부 모델 파인튜닝을 더 많이 해서 pytorch의 수준 능력이 고급까지 아니여도 되는 지 궁금합니다.

개발자

#취업

#취준생

#자연어처리

#ai

#인공지능

답변 0

댓글 0

조회 32

8달 전 · 문종호 님의 새로운 답변

RAG 를 짜는 중에 도무지 어떤 부분이 문제인지 모르겠습니다.

# JSON 파일에서 FAQ 데이터를 로드하는 함수 def load_faq_data_from_json(file_path): with open(file_path, 'r', encoding='utf-8') as f: faq_data = json.load(f) return faq_data # FAQ 데이터 로드 json_file_path = '' faq_data = load_faq_data_from_json(json_file_path) # ChromaDB 클라이언트 및 Embedding 설정 chroma_client = chromadb.Client() # ChromaDB 클라이언트 생성 # 고유한 컬렉션 이름 생성 collection_name = "faq_data_" + datetime.datetime.now().strftime("%Y%m%d_%H%M%S") collection = chroma_client.create_collection(collection_name) # LangChain의 Text Splitter 설정 text_splitter = RecursiveCharacterTextSplitter( chunk_size=512, chunk_overlap=50 ) # OpenAI 임베딩 설정 openai_api_key = '' embedding_function = OpenAIEmbeddings( model="text-embedding-ada-002", openai_api_key=openai_api_key ) # 텍스트 스플리팅 및 임베딩 생성 함수 def split_and_embed_text(text): splitted_texts = text_splitter.split_text(text) print(f"Splitted texts: {splitted_texts}") try: # OpenAIEmbeddings는 embed_documents를 사용합니다. embeddings = embedding_function.embed_documents(splitted_texts) except Exception as e: print(f"임베딩 생성 중 오류 발생: {e}") return None # 임베딩이 제대로 생성되었는지 확인합니다. if embeddings is None or len(embeddings) == 0: print("임베딩 생성 실패") return None # 임베딩을 numpy 배열로 변환 embeddings = np.array(embeddings) print(f"Embeddings shape: {embeddings.shape}") # 임베딩 벡터의 차원을 확인하고 처리합니다. if embeddings.ndim == 1 and embeddings.shape[0] == 1536: # 임베딩이 1차원 배열이고 길이가 1536인 경우 final_embedding = embeddings elif embeddings.ndim == 2 and embeddings.shape[1] == 1536: # 임베딩이 2차원 배열이고 두 번째 차원이 1536인 경우 final_embedding = np.mean(embeddings, axis=0) else: print("임베딩 벡터의 차원이 예상과 다릅니다.") return None print(f"Final embedding shape: {final_embedding.shape}") return final_embedding # FAQ 데이터를 Vector DB에 저장 def store_faq_data_in_vector_db(faq_data, collection): for faq in faq_data: # 'question'과 'answer'가 있는지 확인하고, 'answer'가 None이 아닌지 확인 if 'question' not in faq or 'answer' not in faq or faq['answer'] is None: print(f"누락된 'question' 또는 'answer'로 인해 항목을 건너뜁니다: {faq}") continue # 다음 항목으로 넘어감 # 텍스트 스플리팅 및 임베딩 생성 question_embedding = split_and_embed_text(faq['question']) if question_embedding is None: print(f"Embedding generation failed for question: {faq['question']}") continue # 임베딩이 없으면 다음 질문으로 넘어감 print(f"Generated embedding for question '{faq['question']}': {question_embedding}") # 각 질문에 고유한 ID 생성 faq_id = str(uuid.uuid4()) # 메타데이터에서 None 값을 제거 metadata = {k: v for k, v in {"answer": faq['answer']}.items() if v is not None} # Vector DB에 저장 collection.add( documents=[faq['question']], metadatas=[metadata], ids=[faq_id], embeddings=[question_embedding] ) # 추가 후 임베딩 확인 (저장된 후 곧바로 확인) stored_results = collection.get(ids=[faq_id], include=["embeddings"]) if stored_results['embeddings'] is not None and len(stored_results['embeddings']) > 0: print(f"Embedding for question '{faq['question']}' successfully stored.") else: print(f"Failed to store embedding for question '{faq['question']}'") # FAQ 데이터를 JSON에서 로드하고 저장 store_faq_data_in_vector_db(faq_data, collection) 이렇게 데이터를 저장하고 # 환경 변수에서 API 키 로드 openai_api_key = os.getenv("OPENAI_API_KEY") if not openai_api_key: raise ValueError("OpenAI API 키가 설정되지 않았습니다. 환경 변수 OPENAI_API_KEY를 설정하세요.") # OpenAI 임베딩 설정 embedding_function = OpenAIEmbeddings( model="text-embedding-ada-002", openai_api_key=openai_api_key ) # LangChain의 Text Splitter 설정 (일관성 유지) text_splitter = RecursiveCharacterTextSplitter( chunk_size=512, chunk_overlap=50 ) # ChromaDB 클라이언트 및 컬렉션 설정 chroma_client = chromadb.Client() collection_name = "faq_data_collection" try: # 이미 존재하는 컬렉션인지 확인하고, 있으면 가져옴 collection = chroma_client.get_collection(name=collection_name) except chromadb.errors.CollectionNotFoundError: # 컬렉션이 존재하지 않을 경우에만 생성 collection = chroma_client.create_collection(name=collection_name) # Vector DB에서 유사 질문 검색 (ChromaDB) def find_similar_question_in_vector_db(new_question_embedding, collection, k=5): results = collection.query(query_embeddings=[new_question_embedding], n_results=k, include=['documents', 'metadatas', 'embeddings']) best_similarity = 0 best_question = None best_answer = None # 검색 결과에서 각 질문의 유사도와 답변을 처리합니다. if 'documents' in results and 'metadatas' in results: documents = results['documents'][0] metadatas = results['metadatas'][0] embeddings = results['embeddings'][0] for i in range(len(documents)): stored_embedding = embeddings[i] metadata = metadatas[i] if stored_embedding is not None: # 코사인 유사도를 통해 유사도를 계산합니다. similarity = cosine_similarity([new_question_embedding], [stored_embedding])[0][0] print(f"유사도: {similarity} for {documents[i]}") # 유사도가 가장 높은 결과를 선택하며, 임계값 이상일 경우에만 선택 if similarity > best_similarity and similarity >= SIMILARITY_THRESHOLD: best_similarity = similarity best_question = documents[i] if isinstance(metadata, list): metadata = metadata[0] best_answer = metadata.get('answer') if isinstance(metadata, dict) else None return best_question, best_answer # Fine-tuned GPT를 사용해 새로운 답변 생성 def gpt_generate_response_from_finetuned_gpt(question, style="의사 A 말투"): prompt = f"다음은 환자의 질문입니다: \"{question}\". 아래 말투를 사용하여 질문에 대해 성실하고 정확한 답변을 작성해주세요.\n\ 말투: {style}" response = client.chat.completions.create( model="", # Fine-tuned된 GPT 모델 ID messages=[ {"role": "system", "content": "You are a helpful medical assistant."}, {"role": "user", "content": prompt}, ], max_tokens=300, temperature=0.7, # 답변의 다양성을 조절합니다. ) return response.choices[0].message.content.strip() # 새로운 질문 처리 및 최종 응답 생성 def generate_final_response(new_question, collection): # 텍스트 스플리팅 및 임베딩 생성 splitted_texts = text_splitter.split_text(new_question) new_question_embedding = np.mean(embedding_function.embed_documents(splitted_texts), axis=0) # ChromaDB에서 유사 질문 검색 similar_question, answer = find_similar_question_in_vector_db(new_question_embedding, collection) if similar_question and answer: final_response = f"질문: {new_question}\n유사 질문: {similar_question}\n기본 답변: {answer}" else: generated_answer = gpt_generate_response_from_finetuned_gpt(new_question) final_response = f"질문: {new_question}\nGPT로 생성된 답변: {generated_answer}\n(이 답변은 벡터데이터에서 유사한 답변을 찾을 수 없어 GPT에 의해 생성되었습니다.)" return final_response # 사용자로부터 새로운 질문 입력 받기 new_question = input("새로운 질문을 입력하세요: ") # 최종 응답 생성 response = generate_final_response(new_question, collection) print(response) 로 데이터베이스에서 유사한 질문-답변 쌍을 끌어오려는데 정확히 같은 질문을 넣어도 (이러면 유사도가 1인데) 저장되어있는 답변이 끌어와지질 않네요...

개발자

#llm#rag

답변 1

댓글 0

조회 104

8달 전 · 익명 님의 질문

react 모바일웹 헤더가 Safari 상단 url 바 가림 현상

React / typescript / tailwindcss 헤더를 fixed / sticky로 고정을 해서 크롬에서는 잘 적용됬는데 아이폰 safari 브라우저에서 설정 - 단일탭으로 하고 들어가면 첨부파일처럼 상단 URL 바를 제 헤더가 가려버리는 현상이 나옵니다. index.html에 아래 속성도 추가된 상태입니다ㅠㅠ <meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" /> 저와 비슷한 현상인 분 계실까요??

개발자

#frontend

#react

#tailwindcss

답변 0

댓글 0

조회 70

9달 전 · 익명 님의 질문

background mode Location 질문 입니다.

안녕하세요. 선배님들 질문이 있습니다. ios Background modes에 location를 이용해서 앱을 죽이지 않고 계속 백그라운드에서 프로세서를 처리 하게 처리를 하였습니다. 하지만 최근에 확인해 보니 간헐적으로 백그라운드에서 처리가 안되는 문제를 확인 하였습니다. 테스트를 하는중인데 showsBackgroundLocationIndicator를 선언하면 location이 스캔이 계속 돌아가는거 같습니다. 혹시 자세히 아시는분 있으시면 코멘트 부탁 드립니다. 좋은 하루 되시기 바랍니다.^^ var locationManager: CLLocationManager = .init() override init() { super.init() setup() } func setup() { locationManager.delegate = self locationManager.pausesLocationUpdatesAutomatically = false locationManager.allowsBackgroundLocationUpdates = true locationManager.desiredAccuracy = kCLLocationAccuracyThreeKilometers locationManager.distanceFilter = 99999 } // end of setup func backgroundTaskStart() { isRuning = true locationManager.startUpdatingLocation() locationManager.startMonitoringSignificantLocationChanges() } // end of backgroundTaskStart

개발자

#ios

답변 0

댓글 0

조회 31

9달 전 · 정성린 님의 질문

[사이드 프로젝트] 패션 이커머스 플랫폼 '푸츠(PUTS)' 앱 개발팀 모집

프로젝트 소개: ‘푸츠(PUTS)_Pick Up The Style!’서비스는 패션 디자이너 브랜드를 중심으로 BM특허까지 보유한 혁신적인 패션 커머스 플랫폼서비스 입니다. 데모버전까지 외주개발을 통해 개발이 완료되었지만 현시점에서 리뉴얼하여 새롭게 런칭버전을 개발하고자 역량있는 팀원을 모집합니다. <참고> 본 서비스의 시장성은 2024년 약 19조 5천억원(캐주얼) 정도의 시장성을 예상하고 있으며 연간 약 3.5%씩 지속적으로 성장 중에 있습니다. 3-5년이내 시장의 10%이상 점유를 목표하고 있으며 시장을 장악 가능한 비즈니스 모델과 마케팅 능력을 보유하고 있습니다. (참조: https://global.fashionseoul.com/2023-11-10/Korean-Fashion-Market-Size-Anticipated-Highest-Growth-Ever) 우리는 패션과 기술을 접목해 사용자와 소비자에게 최상의 쇼핑 경험과 정보 공유, 소득을 제공하는 서비스로 패션산업의 큰 파도를 함께 일으킬 분들을 모집합니다. 사이드 프로젝트 형태로 진행되며, 유연한 근무 환경에서 협업을 지향합니다. 3-5년이내 엑싯을 목표로 진행됨으로 임금지급 방식이 아닌 지분분배 방식으로 진행됩니다. 프로젝트 완료시 파트별 기여도에 따라 지분설정이 되며 관련 내용은 프로젝트 진행 전 협의를 통해 산정하여 계약진행 예정.(급여를 제공 받고자 하시는 분은 정중히 사양합니다.) 모집 직군: 1. 프론트엔드 개발자 (1~2명) o 주요 업무: 모바일 앱 UI/UX 구현, 웹 랜딩페이지, 사용자 인터페이스, 어드민 프론트엔드 개발 o 기술 스택: React Native 또는 Flutter, JavaScript/TypeScript, HTML/CSS o 우대 사항: 모바일 퍼포먼스 최적화 경험, 패션 커머스 개발 경험 2. 백엔드 개발자 (1~2명) o 주요 업무: 서버 및 데이터베이스 설계, API 개발, 어드민 백엔드 개발 o 기술 스택: Node.js, Django, AWS, PostgreSQL, RESTful API o 우대 사항: 대용량 트래픽 처리 경험, 보안 및 결제 시스템 개발, 이커머스 어드민개발 경험, 포인트관리 및 쿠폰설정 관리 등 3. UI/UX 디자이너 (1명) / 대표자와 함께 진행 또는 대표자가 진행 o 주요 업무: 모바일 앱 디자인, 사용자 경험 설계 o 필수 스킬: Figma 또는 Photoshop, Illustrator o 우대 사항: 패션 브랜드 디자인 경험, 사용성 테스트 및 피드백 반영 경험 근무 형태: • 프로젝트 기반 협업 (파트타임 가능) • 원격 근무 가능 (주 1회 온라인 미팅) • 유연한 일정과 주도적인 업무 환경 우대 사항: • 사이드 프로젝트 경험 • 패션, 커머스에 대한 관심과 열정 • 스타트업 문화에 익숙한 분 • 책임감 강하신 분 지원 방법: • 이력서와 포트폴리오를 [dcode00@naver.com]로 제출 • 지원 시 사이드 프로젝트 경험 및 참여 가능 시간을 명시해 주세요. 문의: • 이메일: [dcode00@naver.com] • 카카오톡/오픈채팅방: [https://open.kakao.com/o/gi5ixgVe] • 회사주소: 경기도 안산시 상록구 한양대학로55 제2과학기술관 지하2층 B210호 (한양대학교 에리카캠퍼스 소재) 지원 마감일: [채용 완료시까지] 로켓펀치 참여링크 https://www.rocketpunch.com/jobs/139647 문의: • 이메일: [dcode00@naver.com] • 카카오톡/오픈채팅방: [https://open.kakao.com/o/gi5ixgVe]

개발자

#사이드플젝

#사이드프로젝트

#팀빌딩

답변 0

댓글 0

추천해요 1

보충이 필요해요 1

조회 189

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

조회 127

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

클래스가 너무 커질때

클래스를 기능별로 분리한 후 1. Facade 패턴을 이용해서 하나로 합친다. 2. 컨트롤러 단에서 분리된 클래스를 일일이 주입받아 사용한다. 1번 방법은 컨트롤러에서 쓰기 간편하니 좋지만, 하나로 합쳐진 클래스가 여러 책임을 지게 될까봐 걱정되고. 2번 방법은 컨트롤러 메서드 적을 때 이 클래스 저 클래스 다 끌어와야 해서 걱정됩니다. 스프링 공부하면서 간단한 게시판 만들고 있습니다. 조회 방식이 좀 다양해서 조회 관련 메서드만 14개가 나왔는데 등록, 수정, 삭제까지 합치니까 하나의 클래스에 담기에는 너무 무거워보입니다. 조회는 따로 떼어놓으려고 하는데 게시글 관련 클래스가 3개가 돼버려서 그 클래스를 대신 호출해줄 클래스를 두려고 합니다. 뭔가 해결책이 찝찝한데 좋은 방법 없을까요?

개발자

#java

#spring

#web

#design-pattern

답변 1

댓글 0

조회 61

9달 전 · 익명 님의 질문

NavigationContainer 중첩 오류

안녕하세요, RN(Expo)로 React Navigation을 적용하다 오류가 해결되지 않아서 질문드립니다. expo를 통해 다음과 같이 index.js에 React Navigation을 적용했습니다. import { store } from "@/redux/store"; import MainScreen from "./screens/MainScreen"; import { Provider } from "react-redux"; import { NavigationContainer } from "@react-navigation/native"; import { createNativeStackNavigator } from "@react-navigation/native-stack"; import LoginScreen from "./screens/LoginScreen"; export default function HomeScreen() { const Stack = createNativeStackNavigator(); return ( <Provider store={store}> <NavigationContainer> <Stack.Navigator> <Stack.Screen name="Main" component={MainScreen} /> <Stack.Screen name="Login" component={LoginScreen} />{" "} </Stack.Navigator> </NavigationContainer> </Provider> ); } 그러나 다음과 같은 오류가 뜨며 빈화면만 보이더라구요ㅠ Error: Looks like you have nested a 'NavigationContainer' inside another. Normally you need only one container at the root of the app, so this was probably an error. If this was intentional, pass 'independent={true}' explicitly. Note that this will make the child navigators disconnected from the parent and you won't be able to navigate between them. 찾아보니 NavigationContainer가 중첩되었다는 것 같은데, 저는 계속해서 그대로 강의를 따라가고 있었고, 따로 NavigationContainer를 적용한 파일이 존재하지 않습니다 ㅠ 다음 속성을 추가해도 오류가 해결되지 않습니다 ㅠ 아마 어디선가 부모에서 NavigationContainer가 적용된 것 같은데 찾을 수가 없네요 ㅠㅠ independent={true} 조금 더 찾아보니 expo-router랑 충돌이 난 거일 수도 있다는데 정확하게 모르겠네요 ㅠ

개발자

#react-native

#react-navigation

#expo

#navigationcontainer

답변 0

댓글 0

조회 114

9달 전 · 노원재 님의 답변 업데이트

ReactNative ios build 에러 3일째 해결을 못했습니다.

시뮬레이션을 실행하려고 해도 스크립트 문제, iPhone 버전 범위 문제, 시뮬레이터 문제가 계속 발생합니다. 어떤 도움이라도 감사합니다. ReactNative를 처음 접했습니다. 저희 팀에서 저를 도울 수 있는 사람이 없습니다. #프로젝트 환경 mac M2 ruby -v ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23] node -v v20.10.0 pod --version 1.15.2 package.json { "name": "labts", "version": "0.0.1", "private": true, "scripts": { "android": "react-native run-android", "ios": "react-native run-ios", "lint": "eslint .", "start": "react-native start", "test": "jest" }, "dependencies": { "@react-native-community/async-storage": "^1.12.1", "@react-native-community/cli": "13.6.9", "@react-navigation/bottom-tabs": "^6.6.0", "@react-navigation/native": "^6.1.17", "@react-navigation/native-stack": "^6.10.0", "@tanstack/react-query": "^5.51.5", "@types/react-native-vector-icons": "^6.4.18", "axios": "^1.7.2", "date-fns": "^3.6.0", "immer": "^10.1.1", "react": "18.2.0", "react-native": "0.74.3", "react-native-calendars": "^1.1305.0", "react-native-date-picker": "^5.0.4", "react-native-dotenv": "^3.4.11", "react-native-get-random-values": "^1.11.0", "react-native-image-crop-picker": "^0.41.2", "react-native-image-zoom-viewer": "^3.0.1", "react-native-paper": "^5.12.3", "react-native-permissions": "^4.1.5", "react-native-safe-area-context": "^4.10.8", "react-native-screens": "^3.32.0", "react-native-splash-screen": "^3.3.0", "react-native-tab-view": "^3.5.2", "react-native-vector-icons": "^10.1.0", "react-native-vision-camera": "^4.5.1", "uuid": "^10.0.0", "yarn": "^1.22.22" }, "devDependencies": { "@babel/core": "^7.20.0", "@babel/preset-env": "^7.20.0", "@babel/runtime": "^7.20.0", "@react-native/babel-preset": "0.74.85", "@react-native/eslint-config": "0.74.85", "@react-native/metro-config": "0.74.85", "@react-native/typescript-config": "0.74.85", "@types/react": "^18.2.6", "@types/react-native-dotenv": "^0.2.2", "@types/react-test-renderer": "^18.0.0", "babel-jest": "^29.6.3", "babel-plugin-module-resolver": "^5.0.2", "eslint": "^8.19.0", "jest": "^29.6.3", "prettier": "2.8.8", "react-test-renderer": "18.2.0", "typescript": "5.0.4" }, "engines": { "node": ">=18" } } PodFile require Pod::Executable.execute_command('node', ['-p', 'require.resolve( "react-native/scripts/react_native_pods.rb", {paths: [process.argv[1]]}, )', __dir__]).strip platform :ios, '12.0' use_frameworks! #use_modular_headers! prepare_react_native_project! linkage = ENV['USE_FRAMEWORKS'] if linkage != nil Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green use_frameworks! :linkage => linkage.to_sym end target 'nexlabts' do config = use_native_modules! use_react_native!( :path => config[:reactNativePath], # An absolute path to your application root. :app_path => "#{Pod::Config.instance.installation_root}/.." ) target 'nexlabtsTests' do inherit! :complete # Pods for testing end post_install do |installer| # https://github.com/facebook/react-native/blob/main/packages/react-native/scripts/react_native_pods.rb#L197-L202 react_native_post_install( installer, config[:reactNativePath], :mac_catalyst_enabled => false, # :ccache_enabled => true ) end end 제가 아래 에러 3가지에 대해 제가 해본 방법들입니다. 1. node 재설치 node_module 폴더 삭제, package-rock.json 삭제 후 재설치 npm install --legacy-peer-deps yarn install 2. Xcode가 node 읽을 수 있도록 설정 sudo ln -s "$(which node)" /usr/local/bin/node 3. Podfile 내 platform 설정 수정 platform :ios, '12.0' or platform :ios, '14.0' 4. Pods 재설치 rm -rf ~/Library/Developer/Xcode/DerivedData or rm -rf ~/Library/Developer/Xcode/DerivedData/* rm -rf Pods rm Podfile.lock pod install --repo-update Xcode \> Product \> Clean Build Folder. cd ./ios pod cache clean -all pod install --repo-update cd ../ npx react-native run-ios --no-packager --simulator="iPhone 15" or npx react-native run-ios --simulator="iPhone 15" or yarn start > i(run ios) Err 1. cocoaPods 설치할 때 [!] CocoaPods could not find compatible versions for pod "React-RuntimeHermes": In Podfile: React-RuntimeHermes (from ../node_modules/react-native/ReactCommon/react/runtime) Specs satisfying the React-RuntimeHermes (from ../node_modules/react-native/ReactCommon/react/runtime) dependency were found, but they required a higher minimum deployment target. Err2. iOS 실행할때 run-ios --no-packager --simulator="iPhone 15" Build description signature: fc1341421f84b87c5245d346c2c17b66 Build description path: /Users/nowonjae/Library/Developer/Xcode/DerivedData/nexlabts-argvodqcybjfcybstpulfpghnzvm/Build/Intermediates.noindex/XCBuildData/fc1341421f84b87c5245d346c2c17b66.xcbuilddata /Users/nowonjae/Desktop/project/NeXLabRN/ios/nexlabts.xcodeproj:1:1: error: Unable to open base configuration reference file '/Users/nowonjae/Desktop/project/NeXLabRN/ios/Pods/Target Support Files/Pods-nexlabts/Pods-nexlabts.release.xcconfig'. (in target 'nexlabts' from project 'nexlabts') warning: Unable to read contents of XCFileList '/Target Support Files/Pods-nexlabts/Pods-nexlabts-resources-Release-output-files.xcfilelist' (in target 'nexlabts' from project 'nexlabts') warning: Unable to read contents of XCFileList '/Target Support Files/Pods-nexlabts/Pods-nexlabts-frameworks-Release-output-files.xcfilelist' (in target 'nexlabts' from project 'nexlabts') error: Unable to load contents of file list: '/Target Support Files/Pods-nexlabts/Pods-nexlabts-frameworks-Release-input-files.xcfilelist' (in target 'nexlabts' from project 'nexlabts') error: Unable to load contents of file list: '/Target Support Files/Pods-nexlabts/Pods-nexlabts-frameworks-Release-output-files.xcfilelist' (in target 'nexlabts' from project 'nexlabts') warning: Run script build phase 'Bundle React Native code and images' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'nexlabts' from project 'nexlabts') warning: Run script build phase '[CP] Embed Pods Frameworks' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'nexlabts' from project 'nexlabts') error: Unable to load contents of file list: '/Target Support Files/Pods-nexlabts/Pods-nexlabts-resources-Release-input-files.xcfilelist' (in target 'nexlabts' from project 'nexlabts') error: Unable to load contents of file list: '/Target Support Files/Pods-nexlabts/Pods-nexlabts-resources-Release-output-files.xcfilelist' (in target 'nexlabts' from project 'nexlabts') warning: Run script build phase '[CP] Copy Pods Resources' will be run during every build because it does not specify any outputs. To address this warning, either add output dependencies to the script phase, or configure it to run in every build by unchecking "Based on dependency analysis" in the script phase. (in target 'nexlabts' from project 'nexlabts') --- xcodebuild: WARNING: Using the first of multiple matching destinations: { platform:iOS Simulator, id:B5AA2E84-4F83-4749-A986-A1FCE5E398A3, OS:17.5, name:iPhone 15 } { platform:iOS Simulator, id:B5AA2E84-4F83-4749-A986-A1FCE5E398A3, OS:17.5, name:iPhone 15 } ** BUILD FAILED ** ] Err3. Xcode 로 Build 할때 (Any iOS Simulator Device (arm64, x86_64)) Command PhaseScriptExecution failed with a nonzero exit code

개발자

#reactnative

#xcode

#reactnative-run-ios

답변 1

댓글 0

조회 564

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

백엔드 공부중인 학부생인데 실무 관련해서 단순한 궁금증이 있습니다!

안녕하세요 현재 백엔드 개발 공부중인 학부생입니다. 공부중 현업에 관련해서 간단한 궁금증이 있는데 알고있는 현업자분이 없어서 여기에다가 질문 남깁니다. 제가 트랜잭션에 대해 공부하다가 spring의 open-in-view 속성에 대해 알게 되었는데 이 설정을 현업에서는 false로 하는지 궁금합니다. False로 할 경우 lazy load하는 부분에서 문제가 생긴다고 하는데 제 추측으론 현업에선 연관 데이터가 많을것 같고 그럼 lazy load를 사용해야 해서 문제가 있을것 같고 또 키자니 트래픽이 많을때 요청이 종료될때까지 영속성 컨텍스트가 유지되면서 커넥션 풀에 커넥션이 고갈하는 현상이 발생할 것 같은 이런 상황을 현업에선 어떻게 대처하는지 궁금합니다!

개발자

#spring-boot

#jpa

#영속성

#트랜잭션

#데이터베이스

답변 1

댓글 1

조회 79

10달 전 · 익명 님의 질문

동시성+데드락 제어를 위한 비관적 락 잠금 질문

안녕하세요 글쓰기 커뮤니티 프로젝트를 개발하는 중입니다 회원이 소설을 찜하는 기능(좋아요)을 구현 중에 있는데요 찜 객체는 아래 첨부한 코드와 같이 memberId와 novelId를 외래키로 갖습니다 동시성 이슈를 다뤄보고자 500명의 사용자가 동시에 novelId가 1인 소설을 찜하는 요청을 보낸다는 가정 하에 jmeter로 테스트를 돌려보니 동시성 이슈가 아니라 데드락 문제가 발생해서요 favoriteJDBCRepository.save(memberId, novelId); 시 novelId가 외래키라 외래키 정합성 검사 때문에 db 내부적으로 novelId가 1인 레코드에 read lock이 걸리는 것 같습니다 favorite 객체 save 시 트랜잭션 A가 novelId가 1인 레코드에 대해 read lock을 얻고, novelId가 3인 novel의 favoriteCount(찜 개수)를 +1하고자 write lock 요청 -> favorite 객체 save 시 다른 트랜잭션 B도 novelId가 1인 레코드에 대해 readlock을 얻고, novelId가 1인 novel의 favoriteCount(찜 개수)를 +1하고자 write lock 요청 -> write lock은 read lock이 전부 해제되어야 얻을 수 있음. 트랜잭션 A는 B가 read lock을 release하기를 대기하고 B도 A가 read lock을 release하기를 대기하면서 데드락 발생 일단 novelId로 novel을 비관적 락을 사용해 조회해서 favorite 객체를 생성한 뒤에 저장하는 방식으로 데드락+동시성 이슈 둘 다 해결이 되는데요(chooseFavoriteV2) 이 방법 말고도 더 좋은 대안은 없을까요??

개발자

#비관적락

#데드락

#동시성

#데이터베이스

#백엔드

답변 0

댓글 0

추천해요 1

조회 51

10달 전 · 포크코딩 님의 새로운 댓글

Next.js Dynamic Routing 관련 질문

현재 ./pages 폴더에서 page router로 라우팅 관리 중에 있습니다! id별 post 상세창 조회를 위해 ./pages/post-detail/[id].tsx 와 같이 작성했으나 Whitelabel Error Page This application has no configured error view, so you are seeing this as a fallback. Fri Aug 30 21:08:21 KST 2024 [67199a4f-4509] There was an unexpected error (type=Not Found, status=404) 만 발생합니다 참고로 ./pages/post-write.tsx 와 같은 파일은 정상 작동합니다 혹시 무엇이 문제일까요? 추가+) 혹시 Next.js 14에서 page router 방식을 사용하는것이 문제일지 궁금합니다

개발자

#react

#next.js

답변 1

댓글 2

조회 54

10달 전 · 이상래 님의 새로운 답변

Nestjs가 앞으로도 부흥할 수 있을까요?

대기업도 노려보고 싶고, 대기업이 아니더라도 제가 가고싶은 기업들 공고를 보면 대부분이 Springboot 기반이더라고요. FastAPI나 Nestjs는 자격요건에 Spring과 같은 백엔드 프레임워크 경험자도 구인하지만, Spring 채용 공고는 오로지 Spring 경력자만 뽑더라고요. 지금 3년차인데... 계속해서 Nestjs를 하는게 맞을까요? Nestjs 공고는 서류합격율도 높은 편인데 Spring 공고는 합격이 거의 없네요...ㅠㅠ 좀 큰 기업들은 노려보지도 못할까 좀 걱정됩니다...

개발자

#이직

#nestjs

#springboot

답변 2

댓글 0

추천해요 1

조회 244