본문 바로가기

전체 글

(75)
[GoLang] 테스트 관련 + 데이터 타입들 + 구조체, 메서드, 인터페이스 Go 테스트의 핵심 규칙 3가지 - 템플릿 1 파일 이름: 테스트 코드를 담으면 반드시 _test.go로 끝나야 함. 2 패키지: 테스트 파일은 테스트하려는 코드와 동일한 패키지에 속해야 함. => 파일 상단에 위치한 package 이름을 기준으로 같은 디렉토리에 있는 파일들끼리 논리적으로 하나의 단위로 엮임. => 일반적으로 하나의 디렉토리 안에 있는 모든 .go 파일들은 반드시 동일한 패키지 이름을 가짐. => 예외적으로 테스트 파일은 다른 패키지 이름을 가질 수 있지만, 보통은 같은 패키지 이름을 사용함. => 같은 패키지에 속한 파일들은 하나의 거대한 파일처럼 동작함. 즉, 별도의 import 필요없음. => 또한, 다른 패키지에서 사용할 수 있는 함수/ 변수인지 아닌지를 public p..
[Go Lang] 첫발 떼기 - 문법 및 자료구조 Why Go? Go는 구글에서 2009년에 공개한 언어로, 구글 내부에서 C++와 유사하지만 복잡성과 컴파일 시간 측면에서 더 낫고, 또 Python, Java에 비해 실행 속도나 동시성 처리에 뛰어난 언어를 목표로 개발한 언어. 간결한 문법, 빠른 컴파일 속도 (C, C++에 비해 훨씬 빠르고, Java에 비해서도 빠름), Goroutine을 활용한 강력한 동시성, 정적 타입, 단일 실행 파일 생성 등의 특징이 있음.정리하면, 컴파일 언어 중에서도 빠른 편이고, 수많은 요청을 동시에 효율적으로 처리할 수 있기 때문에 클라우드 환경에 적합하고, 또 단일 바이너리로 배포되어 도커와 같은 컨테이너 환경에 매우 적합함. 심지어는 Docker, K8s, Terraform 등과 같은 클라우드 핵심 기술들이 애초에..
[카카오] 클라우드 플랫폼 엔지니어 (3년차 이상) 지원 후기 채용 프로세스 - 서류 > 코딩테스트 > 1차 면접 > 인성 검사 > 2차 면접 > 처우 협의 1 서류 단계 사실 카카오라는 회사가 내 레이더에 항상 있었기 때문에, 공고를 보고 들어왔지만 나와는 여러모로 상황이 맞지는 않았다.우선 자격요건에 3~10년차라고 언급되어 있었지만 나는 신입이었고, 또 클라우드 플랫폼 엔지니어라고 되어 있지만 그 중에서 나는 클라우드만 어느정도 건드려봤을 뿐 스토리지나 플랫폼에 대해서는 대단한 접점이 있는 것은 아니기 때문이다. 그러나 카카오 엔터프라이즈라는 회사는 전부터 매력적이라고 생각하고 있었기 때문에, 자격요건과 역량 등을 보고 그래도 도전장을 내밀어봄직하다고 느껴서 에라 모르겠다 하면서 지원서를 제출했다. 제출 시에 사실은 여러모로 고민이 많았다. 내가 경력자가 아닌..
[취준 관련] 3월 회고 🚧 좋은 데이터 엔지니어가 되기 위해 매일 노력을 더해가고 있다. 1, 2월을 어떻게 보냈는지에 대한 회고는 https://globalman96.tistory.com/91 에 있다. 우선 3월에 있었던 일들은 다음과 같다. 꽤나 일들이 많았어서 이게 다 3월이라는 게 신기할 따름이다. * SQLD 시험 응시* 각종 기업들 최종면접* 가고싶은 기업들 서류, 코딩테스트 전형* CS 리뷰* 프로젝트 시작과 완성 및 1차 최적화 완료                      ★ ★ ★ ★ ★* 예비군,,, SQLD 시험의 경우 어렵지 않은 시험이다. 나는 전공자지만 학교에서 DB를 수강 안했기 때문에 어느정도 공부할 필요가 있었다. 그래서 노랭이 책을 사서 한 3일 꼬박 공부한 것 같다. 원래 자격증 취득은 기정사실화..
[프로젝트] 📈주식 데이터 분석 파이프라인 구축하기 LOGS 파이프라인 구축 시 고려할 점    환경 설정 config✔ github에 리포지토리 만들고 내 작업환경인 VSC에서 로컬 폴더 열고 연동시켜줌.✔ .gitignore 파일 생성해서 불필요한 파일은 git에서 제외해줌.✔ API 데이터를 가져오고, dataframe을 활용하기 위해 requests와 pandas 각각 설치 완료.✔ Docker 환경 설정 docker-compose.yml 작성 및 컨테이너 띄우기까지 완료 지난 경험에서 로컬에서 작업할 때는 독립적인 환경을 확보하기 위해서 python 가상환경을 활용하기로 했기 때문에 가상환경 활성화해줌. bash에서는 그 커맨드가 아래와 같다. activate 하면 (venv)가 뜨고, 그럼 잘 실행된 것.source venv/Scripts/activat..
[알고리즘] 다익스트라 & 프림 최최최최종 복습하기 그래프 상에서 노드 간의 탐색 비용을 최소화하는 알고리즘인 최단 거리 알고리즘...맨날 쓰고 까먹고 쓰고 까먹고의 반복. 이번이 "최최최최종"이 되길. 1 Dijkstra + 우선순위 큐2 Bellman-Ford3 Floyd-Warshall MST 구하는 알고리즘 4 Prim - 정점 기준 + 우선순위 큐5 Kruskal - 간선 기준  1 다익스트라 알고리즘특정 하나의 노드에서 다른 모든 노드까지의 최단거리를 구하는 알고리즘.Greedy + DP 형태. 음의 가중치가 있다면 사용 못함. 중요한 건 뭐냐면, 최적화 안된 형태의 다익스트라는 시간복잡도가 벨만포드보다 빠르다고 할 수 없다.우리가 말하는 다익스트라가 빠르다는 건 그러니까, heap을 활용해서 우선순위 큐를 쓰는 최적화된 버전에 대한 설명인 것..
[미래에셋증권] AI/ IT,Digital 채용연계형 인턴(신입사원) 지원 후기 1 서류 단계그냥 있는대로 작성했다.  2 코딩테스트 단계 알고리즘 2문제, SQL 2문제 알고리즘 1: 전기 요금표 주고 최종 전기료 계산하는 기본 문제.알고리즘 2: 배달 시간, 배달 팁 있는 2D 리스트를 돌면서 최대 팁 얻는 문제.                    dfs로 푸는 문제. 재귀로 품. 다만 최적화가 중요한데, 이 문제에서는 해당사항 없음.                    시간 많이 잡아먹은 부분은 table의 얕은 복사 문제. 이 문제를 찾고 해결하기까지 좀 걸림.                    새로운 list 만들어서 해결. SQL 1: 기본적인 where 조건문 활용 문제.SQL 2: 기본적인 query 동작 +             count max인 사람들은 모두 한 줄..
[SQLD] SQL 스킬을 업그레이드하자! - 자격증은 덤이지 과목 I - 데이터 모델링의 이해 🧠  데이터 모델링의 목적 유연성, 일관성 유지, 중복 제거  데이터 모델링이란? '현실 세계'를 단순화하여 표현하는 기법. 추상화: 상위 개념화. 데이터 모델에서 중요한 정보만 남기고, 나머지 세부사항을 제거하는 과정.             => ERD에서 엔티티 간의 관계를 일반화할 때 사용.             => "운전하는 법"을 배울 때, 차종별 차이를 생략하는것.단순화: 추상화보다 더 실용적이고 직관적인 개선 과정.             => 정규화 진행, 릴레이션의 복잡성을 줄이기 위해 테이블 병합 혹은 분할.             => 자동차 기능 중 창문 연다처럼 쉽게 설명하는 것.명확화: 데이터를 사용할 사람들이 같은 의미로 해석할 수 있도록 용어..