today's helen

seize!

반응형

분류 전체보기 44

[알고리즘] 가장 짧은 문자거리

한 개의 문자열 s와 문자 t가 주어지면 문자열 s의 각 문자가 문자 t와 떨어진 최소거리를 출력하는 프로그램을 작성하세요.입력설명첫 번째 줄에 문자열 s와 문자 t가 주어진다. 문자열과 문자는 소문자로만 주어진다. 문자열의 길이는 100을 넘지 않는다.출력설명첫 번째 줄에 각 문자열 s의 각 문자가 문자t와 떨어진 거리를 순서대로 출력한다.입력예제teachermode, e출력예제10121012210문제풀이완전탐색 문제다. 왼쪽에서 오른쪽으로 탐색하는 코드는 비교적 쉽게 작성할 수 있다.이제 다시 오른쪽에서 왼쪽으로 검색하며, 배열 내 숫자를 검색하게 되는데 이때 Math.min()메소드를 사용하게 된다.카운팅 넘버를 1000으로 잡아둔 후, 왼쪽에서 오른쪽으로 순회하며 답으로 도출할 값을 구한후, 다시..

카테고리 없음 2026.07.12

[알고리즘] 숫자만 추출

문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출해 그 순서대로 자연수를 만드는 함수를 작성하세요.만약 'g0en2t0s8eSoft'에서 숫자만 추출하면 0, 2, 0, 8이고 이것을 자연수로 만들면 208이다.문제풀이정규표현식을 이용해서 숫자를 제외하고 나머지 알파벳을 모두 공백으로 제거해준다.function solution(s) { let answer; let s2 = s.replace(/[^0-9]/g, '').split(''); s2.filter(item => item > 0); return answer = Number(s2.join(''));}다른 문제풀이function solution(str) { let answer=''; for (let x of str) { if..

카테고리 없음 2026.07.12

[26년 상반기 회고] Connecting the Dots

작성 중 ...올해 RecapAWS Student Builder Group at DGU 1기BOAZ 26기 [데이터 분석] 파트 수료Notion 공식 자격증 (Advance/Workflows) 취득ETS 자격증 TOEIC Speaking IH (140) 취득한국공학교육인증원 반도체 (Fundamental/ 시스템SW General) 자격증 취득정보통신공학과 캡스톤 디자인 학생/교수평가 1위2026 AX 아이디어 경진대회 출품상반기 블로그 작성 17개! 여행책: 나는 1-2부터 현재 4-1까지 교내동아리, 9oormthonUNIV, UMC, SOPT 등 많은 IT 커뮤니티(= 동아리)를 경험해왔다동아리는 네트워킹과 인맥이라는 큰 장점이 있지만, 점점 네트워킹과 과제에 시간을 너무 많이 쏟게 되고, 좁은 ..

recap 2026.07.11

[AWS] AWS Student Community Day 회고

지난 7월 4일, AWS Student Community Day 2026에 다녀왔다AWS Student Builder Groups가 주최하는 대학생 컨퍼런스로, Dev / Startup / Career 세 개 트랙이 동시에 진행되고 Time마다 하나씩 골라 들어가는 방식이었다나는 Career와 Startup 트랙을 골랐다. 기술 세션이 궁금하지 않았던 건 아닌데, 요즘 취준을 하다보니 주변 취준생들의 이야기도 듣고 연사님들께 조언도 구하고, 무엇보다 꼭 듣고 싶은 Career 섹션이 있어서 해당 행사에 참여하게 되었다[Career Track] 비선형의 가치 - 영상학과에서 클라우드 엔지니어까지, 16년의 비선형 커리어, 강전희 연사님CJ ENM에서 티빙 인프라를 운영하시는 분이었는데, 첫 회사가 도산(?..

aws 2026.07.10

[AWS] CloudTrail을 이용한 AWS 사용자 활동 추적과 로그 분석

요약: aws에서 누가, 언제, 무엇을 했는지 알고 싶다면 CloudTrail 로그를 보기지난 글에서는 누구에게 무엇을 허용할 것인지를 다뤘는데, 이번 글은"실제로 누가 무엇을 했는가"에 대한 내용이다 Presigned URLCloudTrail질문누구에게 무엇을 허용할까누가 실제로 무엇을 했을까성격사전 통제사후 탐지시점사건 전사건 후권한을 아무리 잘 설계해도 누가 언제 그걸 바꿔버렸는지 추적할 수 없으면 의미가 없고,반대로 로그만 잔뜩 쌓아둬도 의미가 없으니 막을 수단이 있어야한다CloudTrail이란aws 작업을 감사하는 서비스로, api 호출과 사용자 활동을 자동으로 기록해준다기록되는 주요 사건의 마지막 두 개를 눈여겨봐야하는데IAM 권한, 버킷 정책 등 설계한 통제 장치들이 누군가에 의해 바뀌었는지..

aws 2026.07.10

[AWS] S3 Presigned URL: 비공개 파일 안전하게 공유하기

요약: S3에 파일을 올려뒀을 때, 그 파일을 특정한 사람에게만, 잠깐 보여주고 싶다면 S3 Presigned URL을 쓰기S3의 기본 원칙: 모든 객체는 기본적으로 비공개이다버킷을 만들고 파일을 올리면 그 순간부터 아무도 접근할 수 없음문제는 어떻게 버킷을 공유할지인데, 이때 아래 세가지 방법이 있다버킷을 공개하는 3가지 방법1. 버킷을 Public으로 열기링크만 주면 끝이고 관리할 게 없다는 점에서 편하긴 하지만, 링크를 아는 사람이면 누구든 받아갈 수 있어서 회사 내부 문서나 사용자 이력서를 관리해야한다면 적합하지 않은 방법이다S3 버킷 유출 사고는 대개 해당 부분에서 발생한다고 한다2. Access Key 나눠주기IAM 자격증명을 주는 방식으로, Access Key와 Secret Access Ke..

aws 2026.07.10

Frontend 인턴 필기 시험 문제 공유

총 6문제 / 25분모두 서술형필기 시험이라고 해서 운영체제와 컴퓨터구조 CS문제를 보고 갔는데,Frontend 직무다보니, JavaScript 기초, CSS 구현, 함수 구현, 결과 출력 예시와 이유를 서술하는 유형이 출제되었다회사의 기술 스택은 Vue+Typescript, SCSS였지만 해당 기술 스택으로 구현하라고 명시되어있진 않았다Q1. CSS 작성아래 조건을 만족하는 CSS를 작성하시오. Login조건.page는 뷰포트를 가득 채울 것.card는 페이지 내에서 좌우, 위아래 가운데 정렬모바일 뷰에서는 최대 너비 360pxPC 뷰에서는 너비 100%좌우 마진은 16pxQ2. 얕은 복사아래 코드의 출력 결과를 작성하고,원본 user를 보존할 수 있도록 copyUser를 다시 구현하시오.const ..

카테고리 없음 2026.07.10

velog에서 tistory로 블로그 이전 자동화 하기 (+ 코드 공유)

나의 티스토리 글 목록을 보면 알다싶이, 고3때 대학 입시를 위해 딥러닝을 짧게 공부했었다. 이후 대학에 와서 개발에 관심을 가진 이후로는 기록의 중요성을 느끼고 블로그를 다시 쓰게 되었다velog는 home에 추천 게시물이 있고, 최신 트렌드 및 취준 인사이트를 쉽게 얻을 수 있어서 참 좋다또한 따로 초기 세팅 없이 기본 테마가 적용되어서 심플하고, 마크다운을 지원하기 때문에 코드 입력도 편하다그래서 ‘글을 쓰는 것’에만 집중할 수 있는게 가장 큰 장점인 거 같다덕분에 약 2년동안 나름 열심히 기록을 하며 벌써 9개의 시리즈를 썼다는 걸 처음 알았다옮기는 이유그러나 고3 때 블로그를 운영하던 당시, 방문자 통계를 보던 재미가 있었는데, velog는 방문자의 경로를 볼 수는 없고 방문자 수만 볼 수 있다..

python 2026.07.10

[AWS] DMS, Route 53, ACM

5. 온프레미스와 AWS 아키텍처 비교해보기온프레미스회사가 직접 서버&장비를 사서 자체 건물(데이터센터)에 설치해 운영클라우드(aws)의 반대말이라고 생각하면 됨서버, 네트워크 장비, 전기, 냉각, 유지보수까지 전부 회사가 직접 관리ex: 회사 지하 서버실에 직접 산 델(Dell) 서버 놓고 운영AWS와 비교구분온프레미스AWS(클라우드)초기 비용큼 (서버 구매)거의 없음 (쓴 만큼)확장 속도느림 (서버 주문~설치 몇 주)빠름 (몇 분 내 스케일업)유지보수회사가 직접 (전기, 냉각, 하드웨어 교체)AWS가 대신 함트래픽 변동 대응어려움 (최대치 기준으로 미리 사둬야 함)쉬움 (오토스케일링)고가용성 (HA)멂가까움시스템 일부가 고장 나도 서비스 전체는 계속 돌아가게 만드는 설계AWS에서 HA를 만드는 대표 ..

aws 2026.07.10

LawLens 서비스 오픈소스 기여! + 스터디 회고

🧑‍⚖️ 들어가기에 앞서무슨 프로젝트인가요?소개🧑‍⚖️ “법제처 공식 DB + 자체 RAG (예규·판례 + LLM 컴파일 wiki)로 모든 인용을 교차검증해서 LLM 환각을 차단하는 한국 법령·세무 Q&A 어시스턴트”→ 단일 Next.js 프로젝트로 두 개 도메인(LawLens + SalesLens)을 운영하는 한국 법령 AI SaaSGithubhttps://github.com/IISweetHeartII/lawlensUrlhttps://lawlens.log8.kr/https://saleslens.log8.kr/구조 분석리뷰하기 전에 구조 먼저 짚고 가자면!총 10개의 도메인, 14개의 페이지❯ tree.├── app│ ├── _components│ ├── account│ │ ├── or..

recap 2026.07.08

React 테스트 전략 - TDD

들어가며스터디에서 테스트 코드를 접했을 때 이런 생각을 했어요."코드가 잘 돌아가는 거 눈으로 확인했는데, 굳이 테스트 코드까지 써야 하나?"근데 프로젝트가 커지면서 기능 하나 수정했다가 다른 기능이 터지고, 어디서 터진 건지 추적하는 데 시간을 다 쓰는 경험을 하고 나서버그는 일찍 발견할수록 수정 비용이 작아요. 개발 중에 발견하면 커밋 하나로 끝나는 걸, 운영 중에 발견하면 hotfix 배포 리스크까지 감수해야 하니결국 테스트 코드는 규모가 큰 프로젝트에서 장기적으로 보았을 떄 유지보수를 위해 필요한 역량이겠구나.. 라고 생각했어요.이 글에서는 React 프로젝트에서 어떤 테스트를 어떻게 작성하면 좋은지 정리해보았습니다!테스트의 핵심 원칙테스트를 처음 배우면 내부 구현을 검증하고 싶어져요.상태가 이 ..

web 2026.07.08

폴더 구조와 아키텍처

들어가며예전에 FSD(Feature-Sliced Design)를 선택한 이유와 기본 레이어 구조를 소개했었어요. 이번에는 한 발 더 나아가 아래의 주제를 추가적으로 다뤄보려 해요.Layered Architecture와 FSD의 관계아키텍처를 그리는 것보다 의존성을 어떻게 강제하는지가 더 중요하다는 것실제 프로젝트에서 FSD를 적용하며 부딪혔던 한계와 고민아키텍처가 필요한 이유새 파일을 만들 때 어디에 넣을지를 5분 이상 고민해본 적 있다면, 그건 아키텍처가 필요하다는 신호예요.기존에 쓰던 역할 중심 구조의 문제는 명확했어요. 하나의 기능과 관련된 코드가 여러 군데에 흩어져 있고, 그 코드들을 찾으려면 직접 생각의 흐름을 다시 꺼내 연결고리를 만들어가야 했어요. 처음엔 src/components, src/..

web 2026.07.08

ASBG(전 ACC) 지원 후기

ACC 1기에 지원하지 않은 이유나는 1년 전부터 ACC에 지원하고 싶었다그 당시에 지원서까지 썼지만 프론트엔드 개발만 했던 나에겐 클라우드 지식이 전무했고, 지원해봤자 면접 때 떨어질게 뻔해서 아예 지원 자체를 안했다그런데 우리 학교 ACC는 1년 단위더라..? 그래서 1년을 후회했다 ㅠㅠ 지원했어도 면접에 붙었을 진 모르겠지만, 면접 경험이라도 해볼 껄.. 하는 마음이 남았다그 사이에 있었던 일들그 이후로 우연히 전공 팀플에서 EC2를 활용해볼 기회가 생겼고, 마감기한에 쫓겨 Bedrock API + OpenSearch로 RAG 챗봇을 간단하게 구축해보기도 했다.물론 노베로 프로젝트를 해본 것 외에도 AWS 문화를 더 접해봐야겠다는 생각에 AUSGCON도 가보고, 아주 우연한 기회로 캠퍼스 투어도 다..

recap 2026.07.08

렌더링 최적화 가이드 및 적용 (ft. Profiler, LightHouse, Memoization, 그리고 React Compiler)

웹 개발에서 성능은 곧 사용자 경험, 그 자체입니다.웹 페이지가 1초 늦게 로드되면 전환율은 7%까지 떨어지고, 3초 이상 느리면 사용자의 53%가 이탈한다고 해요.프론트엔드 개발자는 점점 더 많은 기능을 담당하게 되었지만, 그만큼 성능에 대한 책임도 커졌어요.성능 이슈는 단순히 “빠르게 만들자”의 문제가 아니라, 렌더링 구조, 리소스 최적화, 이벤트 핸들링, 그리고 사용자 네트워크 환경까지 고려하는 일입니다.구현은 공식 문서나 라이브러리 가이드가 도와주지만, 성능 최적화는 어디에도 정답이 없고, 개발자가 직접 체감하고 해결해야만 하는 영역입니다.저는 React DevTools Profiler로 병목 구간을 찾고, useMemo / useCallback / memo로 불필요한 렌더링을 없애서 화면이 실제..

web 2026.07.08

TanStack Query 원리부터 제대로 쓰기

useQuery 한 줄로 데이터를 가져오는 건 쉽죠! 하지만 Query Key는 왜 배열이어야 하는지, Optimistic Update에서 cancelQueries를 빠뜨리면 어떤 일이 생기는지, Suspense와 ErrorBoundary가 어떻게 맞물리는지에 대한 생각을 작성했습니다!들어가며대부분의 웹 프레임워크는 데이터를 가져오거나 업데이트하는 정해진 규칙이 없어요이 때문에 개발자는 데이터를 처리하는 방법을 직접 고민해야하죠!React에서 useEffect를 사용하는 방법→ 데이터를 가져오거나 업데이트하는 코드를 컴포넌트 내부에 작성하여 상태와 side effect가 연결됨전역 상태 관리 라이브러리 사용→ 서버에서 가져온 데이터를 전역 상태 관리 도구에 저장하고 여러 컴포넌트에서 사용할 수 있도록 함..

web 2026.07.08
반응형