분류 전체보기 474

기업형 SNS 프로젝트 START.

이번 회사에서 기업형 SNS 프로젝트를 구축하는데, 처음으로 서버 아키텍트 역할을 맡게 되었다. 기존에 존재하는 기업형 SNS 시스템을 고도화 하는 차원이긴 한데, 그래도 아무것도 없는 밑바닥에서부터 시작을 한다. 기존 시스템의 기능이나 기획이 제법 잘되어있었기 때문에, 기획적인 부분은 상당수 그대로 가되, 서버 소스나 아키텍처는 정말 상태가 안좋아서 처음부터 내가 직접 설계를 할 것이다. 현재로썬 데이터베이스 모델링과 엔티티 모델링에 가장 큰 비중을 두고 생각하고 있다. 개발 인력은 외주업체를 쓰게 되었다. 갖은 신기술과 개발인력들의 수준. 생산성을 고려해야 하기 때문에 고민이 이만저만이 아니다. 앞으로 아키텍트로써 프로젝트 설계를 하면서 하게되는 고민과 발생하는 에피소드를 기록해야겠다..

스프링 시큐리티를 이용한 보안 - 1부 인증

현재 맡고 있는 프로젝트의 Rest Api 가 보안이 전혀 돼 있지 않아서, 보안을 강화하는 작업을 시작했다. 보안이 전혀 돼 있지 않기 때문에, 사용자 아이디/비밀번호 정보가 없어도, Rest Api 를 호출하면 비밀정보를 쉽게 볼 수 있는 상황이였다. 보안을 위해 Spring Security 를 적용하였다. 보안 적용을 하면서 Spring Security 에 대해서 좀 더 자세히 알게 되었고, 그 내용에 대해 포스팅 하고자 한다 위 사진은 웹 기반 인증 요청을 처리하는 기본 프로세스이다. 굉장히 이해하기 쉽게 잘 도식화돼있고, 스프링 시큐리티 인증 처리의 기본 동장 방식 이기 때문에, 스프링 시큐리티를 이해하려면 반드시 위 인증 처리 과정을 이해하고 있는 것이 좋다. 설명에 앞서, 설정 파일을 JAV..

Spring Framework 을 이용하면서 Mockito 로 테스트하기

나는 개인적으로 개발할 때, 테스트가 제대로 안되는 상황이 가장 답답하다. 어떤식으로 작동하고 어디서 버그가 발생하는지 정확히 눈으로 보이지 않는 상황이 개발할 때 가장 답답한 것 같다. 대용량 분산 처리. 캐쉬. Message Queue. 마이크로 아키텍처. Redis. NoSQL. SNS(트위터.라인.페이스북.인스타그램 등) 아키텍처를 공부하면서 연신 감탄하고. 시간복잡도. 공간복잡도를 분석하고. 보다 나은 알고리즘에 대해 생각하고.. 연구하고.. 정말 재밌고 좋다.. 다 좋은데, 실상 회사에서 일할때. 가장 많이 접하는 건 거대한 소스덩어리 이고 가장 많이 체감하는 건 이 거대한 소스덩어리 는 정말 많은 객체들과 강력하게 결합돼있고, 단위 테스트를 도무지 어떻게 해야할지 감이 안잡히는 상황 이다. ..

프로그래밍/TDD 2015.03.13

금연 488일 째

그냥 잉여 시간이 생겨서 간만에 금연일기를 써봅니다. ㅎㅎ 이제는 금연 일기라는 걸 쓰는것 자체가 큰 의미가 없지만.. 금연 488일 째가 되니 흡연 욕구가 거의 없습니다. 하루종일 담배생각은 아예 나지 않습니다. 물론 아직도 피면 맛있을거란 생각은 듭니다. 펴볼까? 라는 생각도 물론 안하지만, 지금 담배값이 2000원이나 껑충 뛴 시점에 금연했던 사람이 다시 담배 피면 바보겠죠 ㅎㅎ 처음 금연 시작 했을 때, 힘들었던 기억은 아직도 생생합니다. 정말 죽는 줄 알았죠 .. 진짜 진짜 힘들었습니다. 하지만 그 힘든 시기를 지나고 나면 열매는 정말 답니다. 저는 일단 담배 필 때 가장 힘들었던 점이 담배를 펴야한다는 강박관념이였습니다. 담배를 별로 피고 싶지 않음에도 불구하고 '어라 시간이 많이 지났네 담배..

금연일기 2015.02.06

Google Guava

프로젝트를 하다보면 Collection ( List , Map ), String 을 정말 많이 다룬다. Map에서 특정 키로 get해서 꺼내쓰거나 String 의 값을 equals 로 비교하여 특정조건문을 수행할 때, 개발자가 아무리 꼼꼼하게 테스트하더라도 개발자도 사람이라 비교하려는, 혹은 사용하려는 값이 null인 경우는 거의 무조건 발생한다. 그렇기 때문에 NullPointerException 정말 자주 만나게 된다. 디버깅해보면 금방 알아내긴 하지만 경우에 따라선 찾기 힘든경우도 있고, 때로는 정말 찾기 힘든 끔찍한 버그를 만들기도 한다. FastFail 이라는 말이 있다. 문제가 있을 땐 최대한 빨리 실패시키는 것이 좋다. 제일 좋은것은 컴파일 시점에 알아내는것이고. 요즘은 프로젝트가 거의 Sp..

금연 353일째

지난 금요일에 친 형이 놀러와서 술을 많이 마시고, 형 차로 형을 시내까지 태워주고 돌아왔습니다. 그런데 형 차에 담배가 떡하니 있는게 아니겠습니까 술이 많이 취해 있어서 저도 모르게 담배를 물고 불을 붙였습니다. 한 5모금 정도 폈는데 약간 독한 느낌(제가 이전에 피던 담배가 3미리 였는데, 형 차에 있던 담배는 7미리짜리 마일드세븐 이였습니다)이 있긴 했지만, 역시 담배맛은 여전히 맛있더군요 ... 5모금 정도 피고 많이 후회 했습니다 ㅠㅠ 그 여전한 맛을 다시한번 느껴서 ... 담배 생각이 종종 나면서 살짝 심장이 두근두근 했습니다.. 피지는 않았습니다.. 지금은 다시 담배생각이 흐릿해져가고 있습니다만.. 어쨌든 여전한 담배맛. 무섭네요 ... 뇌는 잊지 않고 있었습니다.. 방심하지말고 다시 금연 ..

금연일기 2014.09.24

영어를 공부할 때 용어에 관한 개인적 생각.

영어를 공부할 때 우리에게 큰 상처를 주는것 중 하나는 용어 일 것이다. 목적어, 주격, 부정사, 형용사, 전치사, 조동사, 동명사 등등.. 이런 용어들은 한문이고 뭔가 직관적으로 와닿지가 않는다 ... ㅠㅠ 예를 들어 at, on, for, about 은 전치사 인데 전치사가 대체 무슨 뜻일까 ? 그냥 전치사라니까 전치사 라고 외우는건 쉽게 잊혀지기 쉽상이다 .. 사전적 의미를 꼭 찾아보는것이 중요하다. . 전치사[ preposition, 前置詞 ][네이버 지식백과]전치사 [preposition, 前置詞] (두산백과) 사전적 의미로 보면 말의 앞에 배치하는 것 정도로 해석이 된다.전치사 라고 하면 이해가 안되는것이 한글자씩 찾아서 해석하면 이렇게 이해가 된다. 반면 영어는 얼마나 직관적인가?우리가 전치..

영어 2014.09.05