전체 글 175

[CJ 올리브네트웍스 기록지] #4 - 재직 중 건강이상...

1. 개요 정말 죽을뻔 했다. 감기도 이런 감기를 걸려본적이 없다. 코감기로 시작해 코로나로 끝난 2주간의 투병생활이 드디어 끝났다. 물론 재택근무를 할 수 있는 상황이어서 일은 지속적으로 할 수 있었지만, 멀쩡했던 시기에 비하면 당연히 성과가 많이 나오지 않았다. 숨을 쉴때도 목이 아팠고 감기약에 들어있는 수면제로 인해 집중이 되질 않았다. 2. 본론 시기적으로 좋지 않았다. 감기기운이 처음 오기 시작한 것은 2월 7일. 우리 팀에게 중요한 발표는 2월 15일에 예정되어있었다. 그 전까지 개발물의 디테일과 핵심 로직을 완벽하게 구현해야 했고, 결과물은 아직 미완성 상태였다. 2월 7일부터 2월 15일까지 해당 구현 계획을 작성했지만, 그 계획이 완벽하게 무너졌다. 7일에는 목표치를 이뤘지만 하루하루 개..

[CJ 올리브네트웍스 기록지] #3 - 실전 개발과 부담감

1. 개요 내가 지금 근부하고있는 부서는 LC/NC 혁신 부서에서 외부 기술을 도입하여 사내 공모 시스템 하나를 구축하는 것이다. 계약직이지만 실제로 개발일을 맡아 하루하루 많은 것을 배우고 있다. 물론 피드백과 실제 개발자 분들이 많이 도와주셔서 부담없이 하고 있지만, 이번에는 조금 다른 일이 있어서 기록하고자 한다. 2. 본문 해당 시스템을 만드는 과정에서 만난 어려움은 바로 실제 임직원 데이터를 사용한 공모시스템을 만들어야 한다는 것이다. 다만 마스터 데이터에 접근할 수 있는 서버는 매 순간마다 접근할 수 없기에 개발 API를 통해 셈플 데이터를 가지고와 개발을 해야했다. 아쉬운점은 이 개발 API도 사내 IP가 아니면 접근할 수 없다는 것이다. 다만 코로나가 심해진 시기이기에 모든 팀원들이 재택근..

[비트코인 자동 거래 시스템] 4주차 Python을 활용한 Mail 자동 전송 시스템

1. 개요 내가 항상 터미널에 들어가서 Python 디렉토리에 저장된 logging 파일을 확인할 수는 없다. 하루하루 결과를 정리해서 전송해주는 시스템이 필요하였고, 비교적으로 구현이 간단한 EMail을 통한 결과 자동 전송 시스템을 작성하였다. 사실 어떤 내용을 담을지 그리고 어떤 템플릿을 사용할지는 정하지 못해서, 간단하게 Text만을 전송할 수 있을정도만 구현하였고 추후에 추가적으로 작성할 계획이다. 2. 본문 Email을 전송해주는 Class를작성하였다. Email은 개인정보가 담겨있기에, Git에는 올려놓지 않았다. 그래서 블로그에 소스코드를 공개하겠다. import smtplib from email.mime.text import MIMEText class Email: def __init__(..

[육군 정보보호병] 1차, 2차 후기 - (최종 합격!)

1.개요 이런 후기를 쓰기는 싫었는데...... 현역 산업기능요원이 TO가 사라지고 특기병으로 지원해야겠다는 생각이 들어, 희망 입대일에 맞는 육군 정보보호병에 지원하였다. 사실 나이도 많고, 현역 산업기능요원을 대비해 취득해 놓은 정보처리기능사 자격증도 있어서 긴장은 되지 않았지만, 아는거라고는 리눅스 관리 밖에 없는 나에게 통신 관련 시험은 스트레스가 될 수 밖에 없었다. 그래도 선발된 22명중에 13등을 하며 여유롭게 합격했지만, 점수로는 22위와 3.5점차이밖에 나지 않는다. 점수가 많이 차이나지 않는걸로 보아 점수 분포도가 정말 촘촘하다는 것을 알 수 있었다. 2. 본문 - 1차 서류전형 지원서는 중요하지 않는다는 생각이 든다. 실제로도 그랬다. 그냥 분량 채워 넣었고 이런걸 꼼꼼하게 읽는다는 ..

[CJ 올리브네트웍스 기록지] #2 - 단체에 기여하는 사람

1. 개요 두번째 기록지이다. 벌써 한달 넘게 회사에서 근무하였다. 본격적으로 개발에 들어가기 시작하면서 간단한 개발문서부터 CTO님 앞에서 발표를 하는 경험까지 가지게 되었다. 부담도 되는 시간이었지만 지나고나니 정말 좋은 경험이라고 생각들어 뿌듯한 마음이다. 2. 본문 하나의 시스템을 만들기 위해서 가장 처음 필요한 것은 '사용자의 요구사항'을 토대로 '어떤 기능'을 만들 것인지를 명확히 알아야 한다는 것이다. 이 두가지를 충족하기 위해선 시스템을 요구하는 사람(고객사)와의 충분한 대화를 한 후 사용자의 요구사항을 분명히 하고 어떤 기능을 어떻게 구현할 것인지에 대해 팀원들과 함께 결정해야 한다. 모든 팀원이 같은 목표를 하고 있어야 한다는 것을 알게 되었다. 회의 시간에 많은 질문을 통해 방법에 대..

[비트코인 자동 거래 시스템] 3주차 Python을 활용한 MongoDB CRUD 모듈 구현

1. 개요 3주차이다. 사실 가장 걱정한 주차이다. Database를 연결해야했기 때문이다. MongoDB 자체를 처음으로 경험하기 때문에 공부해야할 것이 많았다. 겨우겨우 CRUD 모듈을 구현하기는 했는데, unittest와 같이 개발에 유용한 것들도 같이 공부해서 정말 좋은 경험이었다. 이제 본격적으로 나에게 알림을 주는 Mail 모듈을 구현해보고자 한다. 2. 본문 - MongoDB MongoDB는 정말 간편한 DB임에는 분명하다. 지금까지 사용한 DB는 MySQL, MSSQL과 같은 쿼리문이 복잡한 DB였는데, MongoDB는 놀랍게도 문서형식의 데이터만 넣어주면 알아서 collection에 저장되었다. 내가 공부한건 Collection과 Database의 개념과 CRUD를 구현할 수 있는 쿼리문..

[비트코인 자동 거래 시스템] 문제해결 - 복잡한 시스템을 개발할 때 유용한 unittest frame work

1. 개요 비트코인 자동거래 시스템을 만들던 중 참고했던 책을 보니, 큰 시스템을 만드려면 각 API를 호출하거나 각 기능을 따로 분류하여 모듈 단위로 개발하는 것이 유용하다는 것을 알게 되었다. 전 글을 보면 Korbit API에서 내가 필요한 API의 기능을 각각 실행시키는 모듈을 만드는 것을 알 수 있다. 지금은 Database에 대한 모듈을 작성중인데, CRUD 그리고 연결 부분까지 하면 모듈의 갯수가 꽤나 많아진다는 것이다. 이렇게 되면 많아지는 모듈의 갯수때문에 각각의 모듈을 test하기 힘들게 된다. 지금도 일일이 하나의 Test Class를 만들고 이를 실행하는데 어려움을 겪고 있다. 분명 이러한 문제를 해결할 수 있는 방법이 있을 것이라는 생각을 하고, python에 개발 방법을 찾아보았..

[비트코인 자동 거래 시스템] 2주차 Python을 활용한 코빗 API 메소드 구현

1. 개요 2주차이다. 말이 2주차이지, 사실 1주차를 구현한지 몇일 되지 않았다. 다만 단계별로 기록지를 올리고 싶어 한 단계를 끝내고 글을 써본다. 언어는 Python을 활용하였다. 이유는 특별한 프레임워크를 사용하는 것도 아니고 서버에 자동적으로 실행되어야 하기에 라이브러리가 많고 쉬운 Python을 사용하였다. 2. 본문 2주차에 한 작업은 코빗 API에서 내가 필요할만한 것들을 확인하고 이를 메소드로 불러올 수 있도록 클래스를 작성하였다. 객체지향언어의 힘을 믿기에 각 기능별로 메소드와 Class를 분류하고, 이를 최종적으로 연결하는 작업으로 개발을 진행하기로 하였다. 다음은 내가 작성한 Class이다. 이것은 가장 기본이 되는 메소드 이고, 이 밑에 해당 API별로 각 메소드를 구분하였다. 그..

[비트코인 자동 거래 시스템] 1주차 코빗 계정 생성과 API 테스트 및 개발 환경 설정

1. 개요 어쩌다가 SNL에서 진행한 이준석님의 인터뷰를 봤다. 프로그램으로 비트코인을 자동매매한다고 하였는데, 대선 3번할 금액을 벌었다고 하셨다. 3억원의 기탁금이 있어야 출마를 할 수 있다는데 그럼 9억원을 벌었다는 것이다. 어떤 방식으로 해야하는지 책을 참고하여 프로그램을 작성해볼 계획이다. 책은 박재현 님이 작성하신 암호화폐 자동 거래 시스템을 참고하였다. 책 링크: http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9791158391027 파이썬으로 만드는 암호화폐 자동 거래 시스템 - 교보문고 24시간 운영되는 나만의 스마트 트레이딩 시스템 만들기 | 트레이딩을 위한 데이터를 저장, 가공, 분석하..

[CJ 올리브네트웍스 기록지] #1 - 회사에 적응 시작

1. 개요 운좋게 CJ 올리브네트웍스에 입사하게 되었다. 정말 운이 좋았다. 맡은 업무는 사내 시스템을 제작하는 팀에 투입되어 하나의 시스템을 설계단계부터 완성단계까지 경험할 수 있는 좋은 업무였다. 다만 특이한 점은 실리콘벨리의 신기술을 적용해야 한다는 것. 덕문에 외국인들과 회의도 하고 새로운 경험을 하며 많은 것을 배우는 중이다. 2. 본론 환경이 중요하다는 것을 알게되었다. 그리고 좋은 환경에 가기위해 그만큼 노력해야 한다는 것도 말이다. 전에 잠시 있었던 회사는 대화가 적고 업무 환경이 침침했던 반면에 대화가 넘치고 질문의 분위기가 자유로운 분위기에서 업무를 하다보니 정말 좋은 분위기에서 일을 할 수 있었다. 많은 것을 배웠다. 조직에 대해 기여한다는 것이 무엇인지를 알게 되었다. 영어 강의의 ..