본문 바로가기

반응형

기록지

(27)
[멋쟁이사자처럼 지원페이지] #1Google Cloud platform을 활용한 배포 시작 강남대학교 멋쟁이 사자처럼의 운영진이 되었다. 가장 먼저 주어진 업무는 운영진 스터디 지도와 Apply-site를 만드는 것이다. 이 카테고리에서는 Apply-site를 만드는 과정을 기록하고자한다. 1. Web hosting 플랫폼 선택 웹 호스팅 플랫폼으로는 구글 클라우드 플랫폼을 선택했다. 일단 첫 가입자들에게는 $300의 무료 크래딧이 생기기 때문에 돈이 없는 학생들이 사용하기에는 딱 좋았다. 인스턴스를 만들고 바로 배포하는 과정이 그렇게 어렵게 느껴지지는 않았다. 다만 프론트 파트에서 React를 사용하고 있기 때문에 배포 과정에서 삽질이 조금 필요할 것 같다. https://cloud.google.com/free?hl=ko 무료 체험판 및 무료 등급 | Google Cloud $300의 무료 ..
[비트코인 자동 거래 시스템] 새로운 알고리즘을 위한 Data 분석 Class 생성!📈 1. 개요 군대를 다녀오니 내 서버에서 24시간 돌아가던 비트코인 자동거래 시스템이 망가져 있었다. 인증 Key와 API 요청값 변경등이 이슈였다. 이런 것들을 변경하고 나니 트레이딩 알고리즘을 조금은 변경하고 싶어졌다. 기존에 너무 간단한 알고리즘을 사용하고 있었기에 조금은 강력한 알고리즘을 적용하고 싶었다. 그런 알고리즘들을 확인해보니 기존의 비트코인에 대한 거래값들이 매우 중요하다는 것을 알게 되었다. 필자가 사용하는 Korbit API에서는 과거의 값들을 제공해주는 API가 없기 때문에 매일 분마다 Korbit에서 제공하는 데이터를 저장해 사용하기로 했다. 몇일동안 계속 서버에 저장한다면 사용할만한 데이터가 나올 것이다. 24시간 서버에서 데이터를 수집할 생각이다. 2. 본문 이동평균과 같은 값들..
[KNU_30 개발일기] ORM을 사용해 객체지향적인 웹페이지를 설계하자 - Hibernate, Entity, Repository를 활용한 데이터베이스 연동 및 설계 1. 개요 Swagger를 설정하고 나서 내가 개발하고 있는 웹페이지에 적용할 기술이 또 뭐가 있을지를 생각해봤다. 많은 구글링을 통해 ORM이라는 존재를 알게 됐고, Java를 사용하는 Spring boot에 필요한 JPA를 공부하기 시작했다. 전에는 Mybatis와 Mapper를 활용하여 데이터베이스에 접근하는 방식을 사용했는데, Spring Data JPA와 Entity로 개발을 해보니 확실이 편하다는 것을 느낄 수 있었다. 물론 각각의 장단점이 있지만, 쿼리를 객체지향적으로 조작하고 유지보수에 ORM이 강하다는 점은 확실이 알 수 있었다. 또한 데이터베이스 쿼리라면 치가 떨리던 나기에 ORM은 데이터베이스에 대한 종속성 자체가 줄어든다는 강점을 주었다. 이번에는 ORM을 적용하기 위해 기본적인 E..
[KNU_30 개발일기] 낡은 웹페이지의 업데이트 시작 - Swagger를 활용한 API 개발 명세 자동화 1. 개요 약 1년전 KNU_30이라는 강남대학교 30주년 이벤트 페이지를 개발한 경험이 있다. 학교에서 서버를 지원해주는 사업이었기 때문에 신나게 서버를 가지고 논 기억이 난다. 단순한 일회성 페이지로 개발되었지만, 프론트 개발을 주도한 친구가 괜찮은 UI를 개발했기 때문에, 동아리도 소개하고 영상들도 첨부하는 페이지가 되었다. 오랜만에 들어가보니 아직도 서버는 구동중이고 방문 로그는 쌓여있는걸 확인할 수 있었다. 서버 한 대가 아깝다는 생각이 들었다. 그래서 관리자 페이지를 만들어 기본적인 데이터 CRUD를 개발하고 싶었다. 교수님을 따로 찾아 봬었다. 팀을 모집하고 장기적으로 개발할 계획이다. 오늘은 그 개발의 첫 단계, Swagger를 활용한 API 개발 명세 자동화이다. 사실 별거 없지만, 그래..
[비트코인 자동 거래 시스템] 6주차 시스템을 배포할 서버를 구축하자! - (Ubuntu로 서버구축하기) 💾 1. 개요 서버를 구축해야했다. 일단 이 모듈이 모든 날 수익을 낼 수는 없다. 결국 상승장에서 돈을 벌 수 있는 모듈이기 때문이다. 따라서 클라우드 컴퓨팅을 하기에는 금액이 고민되었다. 1분에 한번씩 API를 불러오는 코드를 계속 실행시키며 데이터베이스에 데이터를 생성한다. 만약 수입이 없는 상태에서 클라우드 컴퓨팅을 해야한다면? 어휴... 벌써 한숨이 나왔다. 다행이도 고모가 주신 노트북이 있어서 윈도우를 하나 밀고 Ubuntu를 설치해 개인서버로 사용할 계획을 세웠다. 2. 본문 서버구축의 순서는 다음과 같다. 1.Rufus 다운 2. Ubuntu ISO 다운 3. 부팅 USB 생성 4. 노트북에 설치 - Rufus 다운 Rufus는 USB를 ISO 파일로부터 부팅 가능한 USB로 만들어주는 프로그..
[CJ 올리브네트웍스 기록지] #8 - 퇴사 🙋🏻‍♂️ 1. 개요 시간이 다 되었다. 오지도 않을 것 같았던 퇴사... 군생활도 이렇게 빨리 지나갔으면 좋겠다. 긴 시간이지만 열정과 함께 최선을 다했고, 그 최선을 다하는 환경조차 너무 좋았다. 내의견을 말할 수 있었고 창의성을 발휘할 수 있었다. 같이 일하시는 분들도 정말 좋았고, 모두에게 배울 수 있는 존경할 수 있는 동료들과 일한다는게 얼마나 중요한지 깨달았다. 이것이 마지막이라고 생각하니 많이 아쉬웠다. 아쉽고 아까웠다. 이런 조직에서 일하기는 쉽지 않을테니까 말이다. 그래도 해야할 일은 해야한다. 세상은 내가 어떤 이유를 가지고 있든 돌아간다. 이런 아쉬움을 연료삼아 더욱 열심히 노력해야한다. 그렇지 않으면 결국 도태되기 때문이다. 개발자가 아닌 이 세상의 규칙인 것 같다. 2. 본문 어렸을 때 부터..
[비트코인 자동 거래 시스템] 5주차 Trading Module을 구현하자! 🎫 1. 개요 퇴사 후 시간이 생겨 비트코인 자동 거래 시스템에 많은 시간을 쓸 수 있었다. 조금은 지체되었던 개발속도를 빠르게 하기 위해 노력하고 있다. 배포와 웹에서 해당 시스템을 trigger할 수 있도록 하기 위해서는 시간이 그렇게 많지 않다. 따라서 친구들을 만나는 시간을 제외하고는 모든 시간을 시스템 개발에 사용하고 있다. 2. 본문 Trading Module을 구현하였다. 해당 모듈의 알고리즘은 간단하다. 1. 현재 가격으로 코인을 산다. 2. 가격이 오르면 코인을 판다. 핵심 알고리즘은 위와 같지만 세부적으로 보면 간단하진 않다. 매수요청을 한 후 매수가 완료되었을 때 매도요청을 해야한다. 이 과정은 1초에 한번씩 계속 실행되어야한다. 그렇다면 조금 더 세부적으로 알고리즘을 작성해보자. 1. ..
[CJ 올리브네트웍스 기록지] #7 - 신입사원분이 오셨다! 👨🏻‍💻 1. 개요 우리 팀에 신입사원분이 오셨다. 사실 너무 부러웠다. 정직원의 신분으로 일을 할 수 있어서가 아니라 군대 문제를 해결하고 걸리는 것 없이 사회생활을 하실 수 있다는 것이 부러웠다. 어떤 스펙으로 이런 회사에 입사할 수 있는지를 물어보고 스스로 더 발전해야 겠다는 생각과 다짐을 할 수 있었던 순간이었다. 2. 본문 전에도 말했는지 모르겠지만 나는 CJ Olivenetworks에서 CTO 조직에 속한 팀에서 일하고 있다. 따라서 조직원들 전체가 만나는 타운홀 미팅을 하거나 조직 내에서 다른 팀과 일할 팀원을 자유롭게 구하는 경우가 많다. 그만큼 회사내에서 하나의 문화를 만들어가고 있는 좋은 조직이라고 생각한다. 따라서 CTO 조직 안에서 신입사원을 위한 환영식을 따로 열어주었다. 소정의 선물들과 ..