본문 바로가기

직접 체험한 항해 플러스 AI 후기: AI 개발자 공부와 딥러닝, LLM 개발의 모든 것! 안녕하세요, 저는 백엔드 개발자 출신으로 IT 업계에서 여러 프로젝트를 경험하며 꾸준히 성장해온 개발자입니다. 대학에서 컴퓨터공학을 전공하고 부트캠프를 통해 다양한 기술을 익힌 후, 현업에서 실제 사용자와 소통하는 개발 업무를 진행해왔습니다. 그러나 AI 교육에 대한 열망은 언제나 제 마음 한켠에 자리잡고 있었죠.1. 항해 플러스에 들어오기 전, 현업에서 겪던 고민현업에서 개발자로 일하면서도 AI 개발자 역량을 키우고 싶었지만, 막상 독학으로 딥러닝이나 LLM 개발 관련 지식을 쌓는 건 쉽지 않았습니다.기존 프로젝트의 한계: 단순 웹 개발에서 벗어나 AI 기술을 접목시키고 싶었지만, 체계적인 커리큘럼이나 멘토의 도움 없이 독학으로는 방향을 잡기 어려웠습니다.지식의 단절: 최신 AI 트렌드와 기술은 빠르게..
CIDR란 ? CIDR(Classless Inter-Domain Routing)는 IP 주소와 그에 대한 서브넷 마스크를 표현하는 방법입니다. CIDR은 네트워크 주소를 더 효율적으로 할당하고 라우팅 테이블을 최적화하기 위해 도입되었습니다.주요 특징서브넷 마스크 없이 표현: CIDR은 IP 주소와 서브넷 마스크를 하나의 문자열로 결합하여 표현합니다. 예를 들어, IP 주소 192.168.0.0과 서브넷 마스크 255.255.255.0은 CIDR 표기법으로 192.168.0.0/24로 표현됩니다.유연한 서브네팅: CIDR을 사용하면 네트워크를 더 세분화하거나 결합하여 사용할 수 있습니다. 이는 전통적인 클래스 기반 주소 지정(Class A, B, C)보다 유연합니다.라우팅 테이블 최적화: 네트워크를 더 큰 블록으로 그룹..
Hazelcast - 오픈소스 인메모리 데이터 그리드 솔루션 Hazelcast는 분산 데이터 그리드(distributed data grid) 및 컴퓨팅 플랫폼입니다. 분산 환경에서 데이터를 저장하고 처리하는 데 사용되며, 성능, 확장성, 신뢰성을 제공합니다. Hazelcast는 인메모리 데이터 그리드 기술을 사용하여 데이터와 계산을 메모리에 저장하고 여러 노드에 걸쳐 분산하여 빠르고 효율적인 데이터 접근을 가능하게 합니다.주요 특징인메모리 데이터 그리드:데이터를 메모리에 저장하여 매우 빠른 데이터 접근과 처리 속도를 제공합니다.분산 캐시, 분산 데이터 구조, 분산 이벤트 및 분산 컴퓨팅 기능을 포함합니다.분산 컴퓨팅:데이터를 여러 노드에 걸쳐 분산하여 고가용성과 확장성을 보장합니다.데이터 복제 및 분할(sharding)을 통해 데이터를 분산 저장합니다.고가용성 및..
ResponseEntity And ResponseStatus 데이터는 어떻게 주고 받을까 ? 1. 기본적으로 서버와 클라이언트는 API로 데이터를 주고 받는다. 2. 데이터 요청중 여러가지 경우가 발생한다. - 서버에 요청이 성공했을 경우. - 서버에 요청이 실패하여 에러가 나는 경우 3. 위와 같은 경우만 하더라도 성공, 실패에 따라 클라이언트는 그 요청이 성공했는지 실패했는지 여부를 판단해야 한다. 그래서 그 판단값을 서버에서 전달해주는데 그게 바로 HttpStatus이다. ( 상태코드란 의미로 사용하며, 200 ok, 400 not found 같은 용어를 들어본적이 있을 것이다 ) ResponseEntity ? 1. API는 HttpHeaders와 body(데이터를 담은 값)로 구성되어 있다. 2. 자바에서는 이러한 응답값을 다루기 위한 Class들을 제공한..
복합키 vs 대표 ID PK 데이터를 식별하기 위해 키(PK)를 이용합니다. 복합키는 데이터를 대표하는 키가 여러 개의 컬럼으로 구성된 것을 의미합니다. 데이터를 더욱 효과적으로 찾기 위해 키에는 기본적으로 PK 인덱스가 생성됩니다. 인덱스는 키의 위치를 정리해둔 것으로 키가 등록/삭제 되었을 때 키의 위치 기록을 하는 수고를 감수하고, 조회할 때의 성능 이점을 얻기 위해 사용됩니다. 이때 PK를 대상으로 인덱스가 자동으로 생성되는데, 이것을 PK 인덱스라고 합니다. 복합키의 경우 조회 조건의 컬럼 조합에 따라 쿼리 성능이 많이 달라지게 됩니다. 복합키 내에서는 일반적으로 카디널리티가 낮은 순에서 높은 순으로 인덱스를 구성하면, 사용하는 쿼리에서도 무난하게 사용이 가능합니다. 하지만 상황에 따라 인덱스의 컬럼 순서를 변경하거나 추가..
/dev/null 2>&1 shell(#mode)에서 간단하게 명령어를 통해 테스트를 진행하면서 "/dev/null 2>&1"의 의미를 알아봅니다. 아래 명령어는 표준 출력을 /dev/null로 redirection 하라는 의미로 표준출력을 버리라는 의미입니다. $ rm test > /dev/null 하지만, test라는 file이 존재하지 않는 경우 아래와 같은 표준에러가 출력됩니다. $ rm test > /dev/null rm: cannot remove 'test': No such file or directory 방금 언급했지만, 이것은 "표준출력"이 아닌 "표준에러"이기 때문에 화면에 출력이 된것입니다. 다시 강조하면 위에 예제는 /dev/null 로 redirection 을 통해 화면 출력을 하지 않는것은 표준출력에 한해서..
JAVA의 미래... JDK21 Virtual Thread
Stereo Type Annotation Stereotype Annotation이란? Annotations denoting the roles of types or methods in the overall architecture (at a conceptual, rather than implementation, level). : 전체 아키텍처(구현 수준이 아닌 개념적 수준)에서 타입 또는 메서드의 역할을 나타내는 어노테이션 스프링은 자동으로 Sterotype의 클래스들을 탐지하고 Bean으로 등록한다. 디폴트로 적용되는 어노테이션 즉, Stereotype Annotation을 이용하면 자동으로 빈을 등록할 수 있다! Stereotype Annotation 종류 @Component 이 어노테이션이 붙은 클래스가 "스프링 컴포넌트"임을 나타낸다. @C..