반응형

귀가 닳도록 들었던 ‘토이프로젝트’ 마음의 짐을 벗어 던지다.

신입 개발자라면 많이들 듣는 얘기가 있을 것이다.

개발 실력 키우고 싶다고? 그럼 ‘개발 블로그’, ‘토이 프로젝트’를 한 번 해봐~정말 귀가 닳고 닳도록 많이 들었던 이야기들이다.
처음에는 ‘아니 일하기도 바쁘고 회사에서 몰랐던 내용들 학습하기도 바빠 죽겠는데 언제 또 개발 블로그 하고 토이프로젝트를 하라는 거야’ 라는 생각이 강했었다.

나는 지금 당장 회사 업무를 잘해내기에도 많은 시간과 노력, 에너지를 쏟아 붓고 있었다.
하지만 잔소리에도 힘이 있든 무의식중에 나도 개발자라면 ‘토이 프로젝트’는 하나 해봐야 한다는
강박을 가지게 되었다.
그렇게 ‘토이 프로젝트’는 마음 한 켠의 짐이 된채 3년 이라는 시간이 흘렀다.


어느 덧 나도 내가 맡고 있는 시스템에서 한 축을 담당하고 있었고
‘나도 무엇인가를 스스로 만들고 운영할 수 있겠다’라는 자신감이 뿜뿜 하던 시절이었다. 그렇게 나는 매번 시도하려고 했지만 바쁘다는 핑계로 포기하였던 ‘토이 프로젝트’를 하게 되었다.

‘어떤 소재의 토이프로젝트를 하면 좋을까’ 하는 생각을 하게 되었고
그 당시 한 참 가격이 많이 올라 시끌벅적 했던 비트코인 관련된 프로젝트를 해야 겠다 생각했다. 그 당시 2017~2018년도 비트 코인 거래를 했던 사람이라면 알 것이다.

한국에서 비트 코인 거래를 하려면 ‘김치 프리미엄’을 참고했어야만 했다.

김치 프리미엄이란 다른 나라에서 거래되는 비트코인가격에 비해 한국에서만 유독 다른 다라 코인 가격보다 적게는 5% 많게는 20~100%까지 높은 시세에 거래되고 있는 현상을 얘기했다. 그렇기에 다른 나라의 비트코인에서 비트코인을 사서 우리나라 거래소로 코인 지갑을 통해 옮겨와 김치 프리미엄 만큼의 차익을 챙겨가는 행위들 또한 만연했었다.

이러한 이유로 다른 해외 거래소와 비교해 김치 프리미엄을 알려주는 웹서비스는 코인러들 사이에서 유명하였다.

그래서 검색을 하다보니 내가 생각했던 웹서비스가 있었고 유저 방문자수가 엄청나다는 것을 웹트래픽을 측정해주는 similar web이라는 사이트를 통해 알게 되었다. 사이트를 보면서 ‘엇 나도 이정도는 만들 수 있겠는데’ 라는 생각이 들었다.
그렇게 나의 첫 토이프로젝트가 탄생 하게 되었다.


사실 마음먹기 보다 행동하기가 더 쉽지 않지만 너무 마음속에 몇 년 째 짐짝처럼
날 짓누르고 있던 ‘토이프로젝트 하기’라는 압박감을 벗어 던지고 싶은 마음이 커서였는지 생각하고 서비스를 오픈하기까지 약 1달도 안걸렸던 것으로 기억한다.그렇게 탄생했던 토이프로젝트(서비스 명칭 re-mind)로 나는 배너 광고라는 수익도 얻어보고 다양한 사업제한(사실상 불법성 제안들,,,,)도 받게 되었다.
그 이후 다양한 기능들을 추가하며 나만의 첫 토이프로젝트를 운영해나갔지만
갑작스런 코인 시장의 폭락과 함께 약 1년만에 서비스의 문을 닫게 되었다. 하지만 토이프로젝트로 인해 나는 ‘무엇이든 할 수 있다’라는 자신감을 얻게 되었고 이 경험은 훗날 내가 다양한 도전을 하는데 작은 성공의 경험으로써 매번 나에게 힘이 되어 주었다.

그리고 가장 컸던 건, 항상 날 짓누르고 있던 ‘토이 프로젝트 만들기’라는 마음의 짐을 벗어 던지며
내 스스로 ‘나도 진짜 개발자가 되어 가고 있구나’하는 마음을 주었고 좀 더 내가 만들어가는 시스템들과 경험들에 대한 애착을 키워나는 밑바탕이 되어 주었다.

구글에 검색해 보니 그 당시 내 사이트를 홍보해주는 글을 모르시는 분이 감사하게도
Steemit 작성해 주셨었다.
https://steemit.com/coinkorea/@terrykim2479/re-mind-kr

마음의 짐을 벗어나는 길은 행동하는 것 뿐이다.

 

최근 뜨고있는 코프확인사이트 "Re-mind.kr" — Steemit

오늘은 최근 새롭게 뜨고 있는 (개발자가 열일하는) 가상화폐사이트를 소개해 드립니다. 바로 Re-mind.kr 인데요.. 비트렉스, 빗파 등 해외 주요거래소들과 비교해, 국내 거래소 코인들과의 프리미

steemit.com

2018년 첫 토이프로젝트 이후 썼던 포스팅
https://brocess.tistory.com/151

 

개발자 에세이 12. 인생사 새옹지마, 개발자에서 기획자로

인생사 새옹지마, 라인 기획자에 지원하다. 어느 덧 개발자로 NHN에 입사한지 1년이 지나고 2년차가 되었다. 그동안 나는 많이 성장했고 개발도 나름 재미있게 하고 있었지만 항상 나보다 잘하는

brocess.tistory.com

 

반응형
반응형

2019 한 해 유익했던 IT기술블로그 모음 [1편]

 

2019 한 해 유익했던 IT기술블로그 모음 [1편]

매번 개발시 막힐 때 마다 구글에 검색을 하게 된다. 검색을 하다 보면 너무 깔끔하게 정리가 잘 된 글들을 만나기도 하고 정말 문제 상황에 대한 해결책만 정리된 글들을 보기도 한다. 그 중에 정말 두고두고 나..

brocess.tistory.com

 

이번에는 저번 포스팅에 이어 유익했던 IT기술블로그 2편에 대해 포스팅 해보도록 하겠습니다.

2020년에는 한 달에 한 번정도 읽었던 글들 중 괜찮았던 글들을 정리하는 시간을 가져보려 합니다.

 

1편에서도 말씀드렸다시피 저는 현재 지금 제가 주로 현업에서 다루는 기술스택은 다음과 같습니다.

[ 스프링, 자바, Vue JS, 리눅스, MYSQL, Hadoop, Spark, Hive, Impala, Cassandra 등]

 

1. 데이터 이상징후 탐지 시스템에 대한 SK플래닛 포스팅

현재 데이터를 다루는 업무도 하고 있다 보니 항상 데이터에 대한 품질 및 비정상적인 데이터 유입 및 처리 방법에 대해서도 관심을 가지고 있습니다. 이에 관련해서 SK 기술 블로그에 Spark Streaming을 사용해 탐지 프로세스를 정리한 글이 있어 추후 관련 시스템을 개발시나 유사한 모듈 개발시 많은 도움을 받을 수 있을 것 같아 남겨봅니다.

http://web.archive.org/web/20170606145044/http://readme.skplanet.com/?p=13557

 

데이터 입수 이상징후 탐지

수안녕하세요. Data Infrastructure팀(이하 DI팀)에서 최근에는 주로 Data Application 개발을 하고 있는 Data Engineer 추이삭입니다. 이번

web.archive.org

 

2. 시계열 데이터의 시각적 분석에 관한 글

데이터 시각화로 인사이트 도출을 하는 글로 다양한 예시와 쉬운 설명으로 정리한 글입니다. 

데이터를 다룰 때 항상 드는 생각은 일반 텍스트 파일형태로 적재되어 있는 것을 보는 것 보다 데이터 목적과 유형에 맞게 시각화시켜 본다면 다양한 인사이트를 도출해낼 수 있을 거라 생각합니다.

https://brunch.co.kr/@dimension-value/19

 

시계열 데이터의 시각적 분석(1) 어디까지 가능할까?

시계열 데이터를 활용한 다양한 시각화 사례 | 데이터 시각화만으로 인사이트 도출이 가능할까요? 가능하다면 어디까지 할 수 있을까요? 얼마 전 뉴스젤리 블로그에 발행한 '데이터 속 인사이트 찾기, '시각화'로 충분하다'라는 글에 대한 반응이 뜨거웠던 점을 생각해보면, 아마 많은 분들이 이 질문을 갖고 계셨던 것 같습니다!'시각화'로 하는 데이터 분석(visualization analysis)은 텍스트 형

brunch.co.kr

 

3. 자바 스트림에 관한 고급 정리 편

자바8버전 이상을 쓰시는 분들은 lamda나 stream을 많이 사용하실 텐데요. 관련해서 좀 더 stream을 잘 사용할 수 있는 방법과 일반적으로 그냥 stream을 썼을 때 놓칠 수 있는 부분들이 잘 정리되어 있어 공유해봅니다. 해당 블로그로 가보시면 stream 총정리글도 있으니 아직 자바8 stream에 대해 익숙하지 않으신 분들도 도움을 받으실 수 있을 거라 생각합니다.

https://futurecreator.github.io/2018/08/26/java-8-streams-advanced/

 

Java 스트림 Stream (2) 고급

이전 포스트에 이어서 Java 8의 스트림(Stream)을 살펴봅니다. 자바 8 스트림은 총 두 개의 포스트로, 기본적인 내용을 총정리하는 이전 포스트와 좀 더 고급 내용을 다루는 이번 포스트로 나뉘어져 있습니다. Java 스트림 Stream (1) 총정리 Java 스트림 Stream (2) 고급 살펴볼 내용 이번 포스트에서 다루는 내용은 다음과

futurecreator.github.io

 

4. 쿠팡 데이터 플랫폼의 진화

쿠팡이 데이터를 처리하는 시스템이 발전해가는 모습을 소개하며 어떻게 데이터를 다루고 있는지에 대해 잘 정리된 글입니다. 꼭 해당 글이 쿠팡의 데이터 처리 history만 설명하고 있다기 보다는 전반적으로 2010년 부터 데이터를 다루는 많은 회사들이 발전해 온 모습을 담고 있지 않나 생각해봅니다. 데이터 엔지니어들이 하는 업무가 궁금하시거나 대용량의 데이터들은 어떻게 처리되는지 궁금하신 분 들, 현업에서 데이터엔지니어로 일하시고 있는 분들이 읽으면 매우 좋을 것 같습니다.

https://medium.com/coupang-tech/%EC%BF%A0%ED%8C%A1-%EB%8D%B0%EC%9D%B4%ED%84%B0-%ED%94%8C%EB%9E%AB%ED%8F%BC%EC%9D%98-%EC%A7%84%ED%99%94-26c827c1ec09

 

쿠팡 데이터 플랫폼의 진화

쿠팡은 라스트 마일 배송과 모바일 퍼스트 플랫폼에서 고객이 상품을 발견하는 새로운 방식을 선사함으로써 한국의 이커머스 시장을 혁신하고 있습니다. 쿠팡의 미션은 고객이 “쿠팡 없이 그동안 어떻게 살았을까?”라고 생각하는 세상을 만드는 것입니다.

medium.com

 

5. 띵글, 훌륭한 개발 문화의 이면에 대한 포스팅

해당 포스팅을 보고 한국 IT산업에서 개발자로서의 삶과 방향에 대해 생각해보게 만들었던 글입니다.

글의 저자분은 개발자들이 관리자가 아니라 별도의 트랙을 따라 수석 엔지니어나 아키텍트, 임권급에 해당하는 특임 엔지니어(Distinguished engineer), 펠로우(Fellow) 혹은 CTO의 열학을 수행하는 것을 보고 싶다고 말하고 있습니다.

비슷한 내용으로 연재된 글들이 많으니 앞으로 개발자로서의 방향이나 지금 걷고 있는 길에 대해 고민이 되신다면 방문하셔서 좋은 내용의 글들을 보며  생각을 정리해보는 것도 좋을 것 같습니다.

http://channy.creation.net/blog/1238

 

훌륭한 개발 문화의 이면(7) – 잉여력이냐 vs. 효율성이냐 :: Channy's Blog

 

channy.creation.net

 

6. 클라이언트들과 직접 맞닿은 서비스를 운영하는 개발자가 읽지 않으면 손해인 글?

클라이언트와 접해 있는 시스템을 운영하다 보면 정말 많은 장애들을 맞닥드리게 되고 해당 장애를 처리하며 또 다른 사이드이펙트를 경험한 적이 있으실 겁니다. 우아한형제들 광고시스템팀의 개발자분이 그동안 경험했던 다양한 문제상황들을 얘기하며 주의해야 할 부분들에 대해 설명해주시고 있습니다. 읽어보시면 아시겠지만 분명 내가 장애를 냈던 상황과 유사한 내용이 있어 뜨끔하실지도 모르겠습니다. 

해당 블로그에 정리된 것들만 조심해도 우리는 크리티컬한 장애를 예방하는데 많은 도움을 얻을 수 있을 거라 생각합니다.

http://woowabros.github.io/experience/2019/09/19/programmer-murphy-law.html

 

개발자 머피의 법칙 - 우아한형제들 기술 블로그

안녕하세요, 우아한형제들 광고시스템팀의 손권남입니다.

woowabros.github.io

 

7. 데이터 품질에 관한 5개 체크포인트

네이버 기술블로그 D2에 19.08.06 연재된 글로 데이터 비지니스 업계의 개발자라면 '코드 품질' 만큼이나 '데이터 품질'에도 신경쓸 필요가 있다는 말이 제일 와닿았던 것 같습니다. 데이터 처리에 관심이 있으신분들은 시간내서 읽어 보시면 좋을 것 같습니다.

https://d2.naver.com/helloworld/1179024

불러오는 중입니다...

 

 

감사합니다. 이번 포스팅은 여기서 마치도록 하겠습니다.

연말 마무리 잘하시고 '나만알고싶은IT글' 카테고리의 포스팅은 2020년 2월 초에 찾아뵙도록 하겠습니다.

반응형
반응형

매번 개발시 막힐 때 마다 구글에 검색을 하게 된다.

검색을 하다 보면 너무 깔끔하게 정리가 잘 된 글들을 만나기도 하고 정말 문제 상황에 대한 해결책만 정리된 글들을 보기도 한다.

 

그 중에 정말 두고두고 나중에도 봐야겠다 싶은 포스팅들이 있다.

그 포스팅들을 메모장에만 정리해놓다 보면 이후에 어디에다 적어놨는지 찾기가 힘들어

해당 포스팅 글의 내용이 필요한 경우 찾아보기가 힘들다.

 

그래서 앞으로는 한 달에 한 번 정도의 주기로 내게 도움이 됬고 유익한 포스팅들을 내 블로그에 모아 볼까 한다.

그 시작을 2019년 유익하게 보았던 포스팅을 소개해 보려고 한다.

 

1편, 2편으로 나누어 7개 정도로 포스팅 하려고 한다.

그에 앞서 지금 제가 현업에서 다루는 기술스택은

[ 스프링, 자바, Vue JS, 리눅스, MYSQL, Hadoop, Spark, Hive, Impala, Cassandra 정도가 되는 것 같다. ]

 

1. 리눅스 서버 60초 안에 상황파악하기

실제 서비스 운영중 서버에서 장애가 났을 경우 핵심 정보를 파악하는 커맨드 명령어를 깔끔하게 정리해 둔 포스팅이다.

기본적으로 해당 포스팅에 기술된 10가지 명령어만 제대로 알고 있어도 장애시 좀 더 빠르게 원인을 찾아 낼 수 있을 것 같다.

https://b.luavis.kr/server/linux-performance-analysis 

 

Luavis' Dev Story - 리눅스 서버 60초안에 상황파악하기

 

b.luavis.kr

 

2. Slow Query를 발생시키는 어플리케이션 구현하고 Thread Dump 분석하기

쓰레드의 개념적인 내용과 Life Cycle의 간단한 설명과 함께 Slow Query를 실행하는 애플리케이션을 구현하고 이를 테스트 하는 과정을 체계적으로 설명하고 있다. 이 과정에서 발생하는 CLOSE_WAIT이 많이 쌓이는 이슈 및 쓰레드 덤프를 통한 분석에 대한 내용까지 일목요연하게 다루고 있어 실제 Database나 외부 시스템들과의 연계된 어플리케이션을 개발하고 있다면 꼭 읽어 보고 이러한 상황에도 유연하게 대처할 수 있도록 하자.

https://brunch.co.kr/@springboot/126

 

Thread Dump 분석하기

- 쓰레드 덤프 분석하기 | 쓰레드 기본 개념을 간단하게 정리하고, 간단한 예시를 통해서 쓰레드 덤프를 분석하는 방법에 대해서 공유한다. 쓰레드 개념 정리 쓰레드 기본 개념을 정리한다. 쓰레드란? 생략한다. 알아서 찾아보길 바란다. 쓰레드 종류 쓰레드는 데몬 쓰레드(Daemon Thread)와 비데몬 쓰레드(Non-daemon Thread)로 나눌 수 있다. 데몬 쓰레드는 일반적인

brunch.co.kr

 

3. MySQL 쓰면서 하지 말아야할 것 17가지

서비스를 개발하는 개발자라면 데이터베이스를 대부분 쓸텐데 해당 글을 읽어보면 꼭 mysql이 아니더라도 다른 rdbms에도 도움이 될 만한 내용을 깔끔하게 정리해두었으니 참고해보면 좋을 듯 하다.

https://blog.lael.be/post/370

 

MySQL 쓰면서 하지 말아야 할 것 17가지

*MySQL 쓰면서 하지 말아야 할 것 17가지* 권장사항이다. 이것을 이해하면 당신의 어플리케이션이 더 나은 성능을 발휘할 것이다. 다만 이것이 사람의 실력을 판단하는 척도로 사용되서는 안 될 것이다.   작게 생각하기 – 조만간 규모가 커질거라면 MySQL ecosystem을 봐야된다. – 그리고 캐싱 빡시게 안 하는…

blog.lael.be

 

4. Scala + Gradle intelli J로 프로젝트 구성하기

실제 spark 작업을 통해 데이터를 뽑는 adhoc작업도 간혹 진행하고 있는데 이 때마다 실제 운영서버의 spark-shell을 열어 작업을 했었다. 이로 인한 문제점은 spark-shell의 작업으로 인해 실제 운영서버에서 돌아야할 작업들이 리소스 부족으로 악영향을 받는 상황이 발생할 수 있다는 것이다. 하지만 편리상 spark-shell로 작업을 진행했었는데 앞으로는 작업해야할 내용들을 실제 로컬환경에 환경을 구성해 돌려보고 해당 작업이 완성되었을 때 spark-submit을 통해 configuration을 적절히 설정하여 돌리기로 맘먹었고 로컬에 환경을 구성할 때 참고했던 블로그이다. spark1.5, 1.6 버전대와 spark2버전대 scala+gradle template을 만들어 놓았는데 필요한 분이 있다면 공유드릴 수 있도록 하겠다.

https://krksap.tistory.com/584

 

Big Data Handling을 위한 Scala - 제9편 Scala + Gradle + Intelli J로 프로젝트 구성하기 01

Big Data Handling을 위한 Scala - 제9편 Scala + Gradle + Intelli J로 프로젝트 구성하기 스칼라 스터디를 시작하고 스칼라로 뭘 짜봐야 겠다는 생각을 했는데 배포까지 하려면 SBT보다는 Gradle로 빌드하는게..

krksap.tistory.com

 

5. Spark의 기본 연산들의 동작방식에 대해 잘 설명되어 있는 포스팅

Spark의 기본 연산들인 combineByKey, reduce, aggregateByKey, filter, groupByKey, flatMap 등 중요한 내용들이 참 잘 설명되어져 있다. Spark를 다루시는 분들이라면 참고해 보면 좋을 듯 하다.

https://backtobazics.com/category/big-data/spark/

 

Spark Archives - Back To Bazics

Spark combineByKey RDD transformation is very similar to combiner in Hadoop MapReduce programming. In this post, we’ll discuss spark combineByKey example in depth and try to understand the importance of this function in detail. Continue reading “Apache Spa

backtobazics.com

 

6. Spark 메모리 관리

Spark의 메모리 관리에 대해 잘 정리된 글로 실제 Spark를 사용해본 분들은 알겠지만 out of memory error가 자주 잘 발생한 경험이 있을 것이다. 메모리 기반 연산처리를 하기 때문인데 Spark가 메모리를 어떻게 사용하고 어떻게 Config를 구성하여 작업하면 좋은지 정말 잘 깔끔하게 정리되어 있고 심도 있는 내용까지 다룬다.

https://medium.com/@leeyh0216/spark-internal-part-2-spark%EC%9D%98-%EB%A9%94%EB%AA%A8%EB%A6%AC-%EA%B4%80%EB%A6%AC-2-db1975b74d2f

 

Spark Internal Part 2. Spark의 메모리 관리(2)

Unified Memory Management in Spark 1.6(1)

medium.com

 

7. 일급 컬렉션(First Class Collection)의 소개와 써야할 이유

일급 컬렉션이 뭔지 궁금하신분? 객체지향적 리팩토링하기 쉬운 코드로 가기 위해서는 왜 일급 컬렉션을 써야하는지 예시와 함께 잘 정리된 글이다. 해당 포스팅의 저자는 Enum과 마찬가지로 일급 컬렌션은 객체지향 코드로 가기 위해 꼭 익혀야할 방법 중 하나라고 소개하고 있다.

https://jojoldu.tistory.com/412

 

일급 컬렉션 (First Class Collection)의 소개와 써야할 이유

최근 클린코드 & TDD 강의의 리뷰어로 참가하면서 많은 분들이 공통적으로 어려워 하는 개념 한가지를 발견하게 되었습니다. 바로 일급 컬렉션인데요. 왜 객체지향적으로, 리팩토링하기 쉬운 코드로 갈려면 일급..

jojoldu.tistory.com

2019 한 해 내게 유익했던 IT기술블로그 모음 1편은 여기서 마치도록 하겠습니다.

다른 분들께도 유익한 포스팅 모음 글이 된다면 좋겠네요.

 

반응형

+ Recent posts