관리자 글쓰기
세무사를 포기했다.
2025. 1. 21. 15:17 - MunJunHyeok

꽤 오랜 시간 동안 여러가지 공부를 해왔지만, 결국 세무사도 포기했고 데이터 사이언스로도 진로를 선택하지 않았다.

 

이유는 간단했다. 너무 힘들었기 때문에 더 이상 뭔가를 도전하기엔 힘도 의욕도 없었다.

 

글을 올리지 않은 동안 여러가지 일이 있었다. 그 중에서 가장 큰 사건을 고르라 한다면 내가 조현병에 걸렸다는 사실이다.

 

어느날 갑자기 누군가 날 찾아와서 우리 가족을 공격할거라는 피해망상이 시작되더니, 끝내는 우리 가족이 전부 악마에 씌었다는 생각에 끊임없이 사도신경을 외우기 시작했다. 교회도 나가지 않던 내가 하루에 10시간 이상을 쉬지 않고 외웠으며 나를 해치려는 환청과 모욕하는 환청, 도우려는 환청과 기만하는 환청. 쉬지않고 더 나은 사람이 되라고 윽박지르는 환청도 들었다.

 

자려고 눈을 감으면 혼란스러운 환각과 환청 때문에 잠을 이루지 못해 약 1달간을 거의 잠을 자지 않았던 것 같다.

 

결국 이상을 느낀 부모님의 설득에 의해 병원에 가게 되었다. 그 과정도 순탄치 않았다. 조현병 환자의 가장 큰 특징 중 하나가 공격성이 증가하는 것이기 때문이다. 내가 이상하다며 병원에 가자는 어머니를 거의 때릴 뻔했다. 다행히 실낱같이 남아있는 이성이 그러지 않게 했던 것 같다. 만약 정말 때렸다면 평생 후회했을 것 같다. 외할머니까지 찾아오셔서 설득한 후에야 간신히 스스로가 이상하다는 것을 인정하고 병원에 가게 되었다.

 

다행히도 조현병은 약을 먹는다면 빠르게 이성이 돌아오는 병이었다. 세간의 인식과는 사뭇 다르다고 할 수 있다. 물론 병으로 인해 뇌기능 자체가 저하되어버리기 때문에 여러가지 증상들이 나타나기는 했다. 약을 먹는 동안 죽은 동생이 내 몸에 들어와 대화하고 인사를 하고 떠난다거나 하는 걸 경험했다. 환청의 연장선이겠지만 이 사건이 동생을 마음 속에서 놓아주는데에 큰 도움이 되기는 했다. 내가 정신적으로 취약해진 가장 큰 이유가 동생의 죽음이었기 때문에 이 이후로는 오히려 정신적으로 건강해진 것 같다. 다만 약은 계속 먹었고, 지금도 먹고 있다. 조현병 약은 절대 스스로의 판단으로 끊어서는 안된다.

 

 

떨어진 인지능력 때문인지, 아니면 하도 여러가지 일들을 겪게 되서인지는 몰라도 한동안 스스로에 대한 믿음이 박살난 채로 살았다. 1년 정도를 그냥 쉬었던 것 같다. 친구들도 만나고 했지만 박살난 믿음은 돌아오지 않고 그저 하루하루를 시간 보내는 데에만 썼다. 그러면서도 너무 답답했다.

 

결국 답답함을 견디지 못하고 취업을 시도했다. 그동안 세무사 공부만 하느라 이뤄놓은게 없으니 당연히 이력서를 넣어도 어떤 곳에서도 연락이 오지 않았다. 조금 무모한 시도이기는 했다. 뇌기능이 저하되었다는 걸 스스로도 느낄 정도로 머리 속에 안개가 낀 듯 했고, 인내심도 끈기도 바닥 났으며, 스스로에 대한 믿음이 없으니 세상과 사람이 한없이 무섭고 두려웠다.

 

그래도 아무것도 하지 않고 누워있는 것에 진절머리가 난 상태라 뭐라도 해야겠다는 마음에 이력서를 계속 넣었다. 그 모습을 본 아버지가 아시는 사장님이나 세무사 분들께 면접이라도 봐달라고 사정하고 다니신 것 같다. 아직 멀쩡하지 않은 상태로 인적성 검사도 보고 면접도 보고 다녔다. 인적성 검사는 특히 처참했다. 한계를 느끼고 특히 절망했던 것 같다. 평생 이렇게 살아야 하는가 하고 정말 크게 실망했었다.

 

그럼에도 불구하고 아버지가 주선해주신 세무사 사무소 중 한 곳에 면접을 보고 취업하게 되었다. 면접 볼 때 최대한 멀쩡하게 보이려고 노력했다. 그 노력 덕분인지 아니면 아버지 덕분인지는 몰라도 간단한 업무도 하기 어려워하는 상태에서 세무사 사무소 신입기장직원으로 갑작스래 취업하게 되었다. 이제 4개월 정도 되었는데, 처음에는 기장 업무도 아닌 간단한 서류 업무도 습득하기 어려웠다. 어쩔 수 없이 하루에 하나씩만 알려달라고 부탁했던 것 같다. 내 사정을 얘기하지 않았기에 알려주는 사람이 당황스러워 했지만 정말 어쩔 도리가 없었다.

 

지금은 많이 나아졌다. 훨씬 더 복잡한 생각도 할 수 있게 되었고 세금 관련 업무도 간단한 것들은 처리할 수 있게 되었다. 세무사는 포기했지만 세무사무소 기장직원은 될 수 있었다. 함께 일하는 비슷한 나이 또래의 세무사 분들을 보면 부럽고 질투날 때도 있긴 하다. 근데 과한 욕심은 내지 않고 있다. 나에게 별로 도움이 되지 않는다는 것을 느꼈기 때문이다.

 

소개로 반쯤 억지로 들어왔기에 금전적인 보상은 그렇게 크지 않다. 거기에 대한 불만은 없는 편이다. 돈 보다는 나의 회복에 큰 도움이 되고 있기 때문이다.

 

내가 지금 집중하고 있는 것은 맡은 업무만이라도 잘 하는 것이다. 그것만으로도 벅차다.

 

나중에 기회가 된다면 더 적어보겠다. 이미 한참 적은 것 같지만 말이다.

 

나를 제외한 누군가는 원하는 꿈을 꼭 이루기 바란다. 누군가는 현실에 굴하지 않고 끝까지 성공하길 바란다. 나는 이제 현실에 순응할 때 인 것 같다. 모두가 성공할 수는 없으니까 말이다.

 

하지만 언젠가 스스로가 충분하다고 느껴진다면 다시 한 번 도전해볼 생각이긴 하다. 그 날이 올지는 모르겠지만.

28일
2021. 8. 31. 14:15 - MunJunHyeok

 오늘은 나의 동생이 삶의 여명까지 함께하지 못하고 청춘조차 등진 채 떠난 지 28일이 되는 날이다. 사람마다 세상이 떠난 가족이 가장 그리워지는 때가 다르다곤 하지만 우리 가족이 공통적으로 그 빈자리를 느끼는 때는 바로 함께 식사할 때 인 것 같다. 혼자 식사할 때도, 친구와 식사할 때도, 가족과 함께 식사할 때도. 슬픔을 이겨내려고 맛있는 것을 사와서  먹고 있자면, 항상 우리가 식사를 다 마칠 때 즈음 침대에서 자기도 달라며 엄마를 부르던 동생의 목소리가 들려온다. 그런 기분이 드는게 아니라, 정말로 들린다. 가족을 잃고 남은 가족이 자주 나타나는 증상 중 하나인 환청이다. 당연히 있어야 한다고 생각한 사람이 없으니 뇌가 착각하는 것이다.

 

 이런 식으로 뇌가 착각하는 경우는 또 있었다. 하루는 지독한 악몽을 꾸고 새벽 2시경에 퍼뜩 깨어난 적이 있다. 동생이 떠나가는 꿈이었는데, 일어나고나서 그저 나쁜 꿈이었다는 사실을 깨닫고 잠시 안도한 적이 있다. 이상하지 않은가? 내가 꾼 꿈은 꿈이 만들어낸 환상이 아닌 현실이다. 안도할 이유가 없다는 사실을 깨닫고 다시 현실을 직시한다.

 

 이성은 이제 해야 할 일을 해야한다고, 이제 잘 보내줘야한다고 외치지만. 항상 마음은 뇌의 명령을 따르지 못한다. 즐겁게 살려고 하며 실제로 그런 일이 있었다는 사실 조차 잊고 즐거움을 느끼며 살지만. 신나게 놀고 난 후, 그 충만한 기쁨과 정확히 비례하게 항상 마음 속 어딘가는 순수한 슬픔이 찾아온다. 이렇게 순수한 슬픔은 느껴본 적이 없다. 그저 참지 않고 울어버릴 뿐이다.

 

 이러한 종류의 슬픔은 위로할 수 없다. 문제란 이해할 수 있어야 해결할 수 있는 것이다. 그런데 이러한 문제는 당사자 조차도 이해할 수 없는 부류이다. 하물며 타인이 이 문제를 이해할 수 있겠는가? 온전히 스스로 해결해야 할 문제이지만,  스스로조차도 어쩌면 평생 동안 노력한들 해결하지 못할 수도 있다. 그저 내 옆의 믿을 수 있는 누군가. 가족이든, 친구이든, 연인이든. 그들이 나를 일으켜준다. 상처를 치유해주지는 못해도. 다시 삶의 의미를 찾을 수 있도록.

 

 술 맛 한번 보지 못하고 떠나간 나의 동생. 술 맛은 보여주고 싶었는데. 너의 상태가 잠시 괜찮아졌다는 소식을 듣고 할머니께서 너 주려고 밤새 싸주셨던 반찬을 맛보지도 못하고 가져가려고 한 그 날 새벽에 떠나갔구나. 밥이라도 먹고 갈 것이지. 올 추석이 너의 49재라더구나. 체감 상 1년은 지난 기분이건만. 아직 그 정도 지났다. 시간이 정말 안 가는 구나.

법인세 - 익금 (1)
2021. 8. 3. 13:19 - MunJunHyeok

1. 익금

 익금은 세법에서 예시주의로 적용한다. 포괄주의라고도 하며, 순자산이 증가하는 경우 익금으로 본다. 반면 순자산이 증가하여도 익금으로 보지 않는 경우가 있는데, 이를 익금불산입 항목으로 하여 열거주의로 열거되어있다.

 

 (1) 현금 증가의 경우 (현금 또한 자산이나 이해를 돕기위해 분리한다.)

  ㄱ. 사업수입금액 (매출)

 

  ㄴ. 자산의 양도가액 (재고자산 외의 모든 자산을 의미한다)

 

  ㄷ. 자산의 임대료

 

  ㄹ. 손금에 산입되었던 금액의 환입액

 

  ㅁ. 간접외국납부세액 (순자산이 증가하지 않았지만 익금으로 간주한다)

   : 법인이 아닌 법인의 자회사가 외국에 납부한 세액을 의미한다.

    ▶ why? 고의로 이중과세로 만들어 이후 세액공제해주기 위해서.

 

  ㅂ. 임대보증금 간주임대료. 

   : 내국영리법인이면서, 부동산임대업이 주업(보유 부동산의 50% 이상이 세)이고 차입금이 과다한 법인일 경우(차입금

   이 자본의 2배 이상) 임대보증금은 순자산의 증가가 아님에도 불구하고 임대료로 간주하여 익금으로 본다.

   ▶ why? 보증금을 이용하여 투자하고 그 투자 수익을 장부에 적절하게 반영하지 않는 경우가 있기 때문이다.

 

   이 때 익금으로 간주하는 금액을 구하는 산식은 다음과 같다.

   ◈ 일반 (기장 O) :

     {(보증금 - 건설비) * 이자율 - 금융수익 = 익금 금액 (익금산입, 기타사외유출)

   ◈ 추계시 (기장 X, 상기 요건 없이 모든 법인 대상) :

     보증금 * 이자율 = 익금 금액 (불가항력 사유 시 기타사외유출. 그 외 대표자 상여)

 

 (2) 자산 증가의 경우

  ㄱ. 자산수증이익 (자산을 받아서 생긴 이익)

   : 'A 법인'의 재무상태표 상의 이익이 100억 잡혀있다고 가정하자. 그렇다면 아무런 문제가 되지 않는다. 회계에서 인

   정하는 이익이 100억이며, 법인세법에서 인정하는 소득 또한 100억이기 때문에 세무조정이 필요하지 않다. 

    회계에서 자산수증이익을 이익으로 인정하지 않아 'A 법인'의 재무상태표에 이익이 하나도 잡혀있지 않다고 가정하

   자. 그러나, 법인세법에서는 자산수증이익을 익금으로 보고 있기 때문에 소득이 100억으로 신고되어야한다. 따라서

   익금산입의 세무조정사항이 발생하여 100억의 유보 처분이 발생하며, 세무조정이 이루어진다.

 

   ㄴ. 자산의 평가이익

    : 보험업법 그 밖의 법률규정에 따라 평가이익을 익금 산입해야하는 경우에는 익금으로 인정한다. 그러나, 그 외의 법

    인이 임의로 평가증한 금액은 익금으로 인정하지 않는다.

 

   ㄷ. 유가증권의 저가양수 (부당행위계산부인. 순자산이 증가하지 않았음에도 익금으로 간주한다.

    : 일반적인 저가양수의 경우, 저가로 양수하여도 처분 시에는 제 값을 받아 그 차액만큼 과세가 되므로 저가로 양도

    한 자에게만 그 양도한 자산의 시가저가로 양도한 금액의 차액만큼 익금 산입한다.

    그러나, '특수관계''개인''유가증권'저가양수하는 경우에 한하여 양수한 자에게 그 차액을 익금 산입한다. 대

    신 처분 시에 저가로 양도한 금액과 처분한 금액의 차이가 아닌, 시가와 처분한 금액의 차이만큼만 과세한다.

    ▶why? 양도한 자가 소액주주인 개인이라면, 장내 거래했을 때 비과세 되기 때문이다.

 

   ㅁ. 불공정자본거래익 (순자산이 증가하지 않았음에도 익금으로 간주한다.)

    : 본래 일반적인 자본거래(합병, 증자, 감자 등)는 순자산이 증가하지 않아 익금으로 보지 않지만, 이러한 자본거래가

   불공정하다고 판단되는 경우에는(주로 특수관계가 있는 경우이다) 익금으로 본다.

 

 

    

(1) 배당소득의 이중과세 문제

 'A법인' 이라는 법인에서 올해 100원의 총수입금액을 벌어들였다고 가정하자. 그리고 'A법인'은 총수입금액 中 10%인 10원을 법인세납부한다. 그리고 남은 금액인 90원'甲 개인'에게 배당으로 지급될 것이다. 이때, '甲 개인'은 이 때 받은 배당소득에 대해서 종합과세된다. 결론적으로, '甲 개인'이 받은 배당금은 법인세 1번, 종합소득세 1번 총 2번 과세되는 것이다. 이를 이중과세라고 하며 일반적으로 옳지 못한 과세로 판단되므로 조정이 필요하게 된다. 대한민국에서는 이러한 이중과세를 조정하기 위하여 Gross-up 제도를 이용한다.

 

(2) Gross-up (이하 G-up) 제도

 'A 법인'이 법인세를 납부한 후의 90원에 대하여 G-up을 적용할 경우에 다음과 같이 된다.

1. 배당소득 90원에 11%의 G-up 금액을 곱하면 약 10원 정도의 금액이 나온다.

2. 배당소득 90원과 G-up 금액 10원을 합하여 100원을 만든 뒤,
그 합한 금액인 100원에 종합소득세기본세율(10%로 가정한다) 을 적용하여 산출세액인 10원을 구한다.

3. 이 산출세액 10원에서 G-up 금액인 10원을 배당세액공제로 제한다.

4. 따라서 종합소득세에서 '甲 개인'은 배당소득으로 인해 과세되는 금액은 0이 된다.

 

 상기 예시에서는 기본세율을 10%로 가정하여 종합소득세가 0이 되었으나, 실제로는 더 높은 경우가 대부분이다. 또한 법인세는 10%에서 25%까지의 구간으로 나뉘어있지만, G-up 금액을 구할 때는 11%로 고정된 금액을 적용하므로 10% 이상의 법인세율을 적용받는 법인의 경우 이중과세문제를 여전히 감수하고 있다는 단점이 있다. 따라서 G-up 제도는 이중과세 문제를 100% 조정해주는 제도가 아니다. 

 

(3) G-up 적용 조건

 1. 내국법인으로부터 지급된 배당이어야 한다. 

  ▶ 즉, 법인세가 과세된 배당이어야 한다.

 2. 피투자회사에서 과세된 소득을 재원으로 해야한다.

  ▶ 즉, 집합투자기구 등 비과세 감면된 소득아니어야한다.

 3. 기본세율을 적용받는 종합과세배당소득이어야 한다.

  ▶ 즉, 연 2천만원 이하 원천징수세율(14%)의 적용받지 않아야 한다.

산 사람은 살아야 한다.
2021. 7. 11. 17:01 - MunJunHyeok

 TV에서 뉴스가 흘러나오고, 가슴을 치며 우는 누군가의 가족들, 혹은 그저 처연히 눈물을 훔치는 가족들, 그런 가족들을 보며 우리 가족은, 저녁을 먹으며 안타까워했습니다. 뉴스를 보며 아버지께서는 한숨을 쉬며 이런 말을 하셨습니다.

 

어휴, 그래도 산 사람은 살아야지.”

 

 최근 몇 년간만큼 이 문장이 우리 가족에게 다른 의미로 다가온 적이 없었을 겁니다. 현재 우리 가족, 나의 동생은 돌아오지 못할 영원한 여행을 앞두고 있습니다.

 

 동생이 유잉육종이라는 들어본 적도 없는 희귀암이 생겨났다는 것을 처음 들었을 당시, 물론 충격적이었지만 나을 수 있으리라 예상했습니다. 워낙 운 좋게 초기에 발견되었으며, 현대의 대부분의 암은 초기에 발견된다면 향후 재발이 되는지 지속적인 감시는 필요하지만 완치는 거의 된다고 그렇게 알고 있었기 때문입니다. 처음 동생이 완치 판정을 받고 집에 돌아왔을 때 저는 당연하다고 생각할 정도로 별 생각이 없었습니다. 항암으로 힘들어하는 동생을 위해 맛있는 것을 사다 주고, 함께 놀고, 얘기하고. 그저 평범하게 대해주며 지내면 동생이 얼마 안가 다시 정상적인 생활을 할 수 있으리라 기대했기 때문입니다.

 

 동생이 몇 개월 뒤 재발 판정을 받고 다시 입원했을 때, 그 다음에도, 그리고 4번째 재발로 입원했을 때에도. 독한 항암제로 온 몸이 붓고 제대로 걷지 못하는 동생을 보았을 때에도, 코로나19로 인해 동생을 보러 가지 못할 때에도, 때때로 정말로 동생이 우리 가족을 떠나게 되는 것이 아닌가 하는 견딜 수 없는 불안이 저를 찾아올 때에도, 저는 희망적이었습니다. 마지막까지 찾아올 기적을 믿었습니다.

 

 4번째 재발 이후, 동생은 더 이상 완치라는 말을 듣지 못했습니다. 유잉육종이라는 것이 왜 희귀암인지, 암이 항암제에 더 이상 반응하지 않고, 뇌경색으로 몸이 마비되고, 다발성 전이가 발견되고, 종국에 뇌로 전이되었을 때. 그리고 더 이상 치료할 수단이 없다는 이야기를 의사에게 얼마 전에 들었을 때. 제 마음 속에 간신히 그려 나가던 미래가 더 이상 보이지 않게 되었습니다. 희망은 나에게 어떠한 좋은 미래가 찾아오리라는 막연한 기대감입니다. 그 미래를 위해 힘든 오늘을 견딜 수 있게 해주는 마음 속에 품은 의지입니다. 그리고 제 마음 속에서 6년 만에 처음으로 그 의지가 완전히 소멸했습니다.

 

 저는 지금 이 이상의 어떤 결론을 내리지 못하고 있습니다. 다만 산 사람은 살아야지.” 라는 말이 나의 가장 소중한 사람은 제대로 먹지도 못 한 채 고통 속에서 죽어가고 있음에도. 나는 여전히 맛있는 것을 먹고 싶고, 피곤해서 자고 싶고, 그리고 함께 고통을 나누지는 못할 망정 정작 나는 고통스러운 상황에서 벗어나고 싶어하는 이 상황을. 그것이 잘못된 욕구가 아님을 나에게 알려주고, 당신에게도 알려주는. 그러한 의미가 함축되어 있는 문장이었음을. 당신이라도 수단과 방법을 가리지 않고 끝까지 살아달라는 부탁이었음을, 이제는 알 것 같습니다.

'Introduce' 카테고리의 다른 글

어느날 갑자기 세무사가 되고 싶어졌다.  (2) 2021.05.03

마치 하늘에서 계시라도 받은 것 처럼, 세무사가 되고 싶어졌다.

 

 현역으로 입대하려고 한 그 해에 디스크가 터져서 갑작스래 신체검사에서 4급 판정을 받아버렸다. 그 다음해에는 23세의 나이에 이미 10년 정도 방치된 수준으로 악화된 통풍이 발견되었다. 그리고 알아보니 통풍은 신체등급 4급이 안나온단다. 나는 아파서 제대로 걷지도 뛰지도 못하는데.. 그래서 이미 4급 판정을 받은게 어찌보면 다행인게 아닌가 싶기도 했다. 

 문제는 22세에 입대해서 24세 부터 내 미래를 준비하려 했던 내 계획에 차질이 생겨버렸다. 사회복무요원은 신청을 해도 못가는 경우가 허다했고 그렇게 대학에서 하루하루를 보내며(그래도 학점을 최대한 올리기 위해서 정신적으로 어려운 상황 속에서도 공부는 꽤 열심히 했다고 생각한다.) 23세가 되어버렸다. 그 해 겨우겨우 TO가 생겨서 시각장애인복지관에서 사회복무요원 복무를 시작할 수 있게 되었다. 복무 시작은 24세 9월. 이후 재지정을 받고 다른 근무지로 옮겼지만 어쨌든 나는 현재 25세가 되었다.

 

 복무일이 다가오니 그동안 계획이 꼬여 혼란스러워하며, 포기하며 살던 나도 뭔가 준비해야겠다는 생각이 들었다. 학점은 3.25로 낮은 편이고(1학년 학점은 2.8이었다.) 어떤 대회나 자격증 스펙 같은 것도 전혀 준비되지 않은 내가. 21개월 간의 복무를 끝내고 26세가 되었을 때. 나는 뭘 할 수 있는가 하는 생각이 들었다. 대학원을 알아보니 이 학점과 스펙으로 날 뽑아주기나 할련지 확신이 없었다. 데이터사이언스대학원에 지원하는 사람들은 내가 닿을 수도 없는 곳에서 날고 기는 사람들일테고, 그런 사람들조차 못들어가서 떨어지는 곳인데 말이다.

 데이터사이언스라는걸 핥다못해 접시 위에 올려두고 쳐다만 봤던 사람이 이런 곳에 들어갈 수 있을리가 없다는 판단이 섰다. 하지만 나는 배짱만 두둑한 인간이라 일단 나의 능력에 대한 자신감은 있는 편이다. 그래서 그것을 증명할 수단이 있다면 가능성은 있다고 생각했다. 그 수단을 생각하던 중, 갑자기 세무사가 생각이 났다.

 

 보통 경제학과 학생들은 CPA 시험을 준비한다. 그런데 CTA가 갑자기 생각이 난 이유는 무엇일지 잠시 생각해봤다. 나의 무의식 어딘가에서 나의 이 데이터사이언스를 향한 갈망과 세무쪽을 어떻게 연결해볼 수 있지 않을까 싶었던 것 같다는 결론이 나왔다. 이렇게 되면 데이터사이언티스트라기보단 핀테크 전문가라고 해야하겠지만 말이다. 어차피 내가 데이터사이언스대학원에 진입하는 것이 힘들다면 세무사라도 따서 먹고 살아야할 것 아닌가라는 생각도 들었다.

 

 그래서 결론은 현재는 사회복무요원 복무 중에 직장인 대상으로 운영하는 세무사 자격증 학원을 다니고 있다. 물론 사회복무요원 일이 현역에 비할 바는 못되지만. 내 몸 상태나 집안/주변 상황이 워낙 좋지 않은데다가 여러가지 스트레스 받을 일도 많고 하니 역시 힘들기는 하다. 매주 토요일마다 11시간 가량 학원에서 붙어있는 것도 근무 중에 정말 짬이란 짬은 다 짜내서 공부 찔끔찔끔하는 것도 내 정신적인 한계를 다 끌어낸다는 느낌이 강하다. 근데 반대로 생각해보면 오히려 이런 상황이기에 포기하지 않고 뭐라도 할 수 있는 것이 아닌가 싶다. 6년간 투병을 지켜봐온 가족의 죽음이 턱 앞에 와있고, 내 의무나 책임이 나를 짓누르는 이런 상황이기에. 죽고 싶어도 죽지는 못하고 나아갈 수 밖에 없는 것 같다.

 

 넋두리가 되었지만 어쨌든 지금까지 이 곳을 방치할 수 밖에 없었던 그리고 앞으로도 언제 다시 찾아올지 모르는 상황에 대한 변명을 적어보았다. 내 상황에 대해서도 조금 정리하고 다시 마음을 잡을 수 있도록.

'Introduce' 카테고리의 다른 글

산 사람은 살아야 한다.  (0) 2021.07.11

 Algorithm. 알고리즘은 간단하게 얘기하면 문제를 해결하는 절차이자, 문제의 처리 방법을 체계적으로 기술한 것입니다.

알고리즘은 궁극적으로 컴퓨터가 효율적으로 문제를 해결하도록 최적의 프로그램을 작성하는 것이 목표입니다.

 

 

 프로그램이란 실제 세계를 컴퓨터가 이해할 수 있는 형태로 매핑한 것을 의미합니다. 예를들어 '줄을 서 있는 사람들'을 컴퓨터 내에서 '대기열'로 표현할 수 있습니다. 이를 추상화라고 합니다.

 

 추상화(abstraction)는 문제 해결을 위해 복잡한 문제를 단순화 시키고, 다른 문제에도 적용할 수 있게 하는 것입니다. 여기서 추상 자료형(ADT)이라는 개념이 나옵니다. 어떠한 자료의 특성을 논리적으로 추상화하여 정의한 자료형을 추상 자료형이라고 합니다. 이렇게 얘기하면 복잡할 수 있지만 쉽게 예를 들 수 있습니다.

 

 '정수'라는 것은 소숫점 이하 자리수 없이 표현되는 숫자입니다. 이 숫자는 늘어나기도 (+) 줄어들기도 (-) 합니다. 이는 실생활에서 사람의 수나 물건의 개수가 늘어나고 줄어드는 것에 대한 추상화입니다.

 

 

 알고리즘은 앞서 얘기했듯, 최적의 프로그램을 작성하는 것이 목표입니다. 그리고 프로그램은 실제 세계를 컴퓨터가 이해할 수 있는 형태로 바꾼 것(추상화)입니다. 즉, 알고리즘을 공부한다는 것은 이미 많은 사람들이 만들어놓은 추상 자료형을 이해하고, 새로운 문제 해결을 위하여 기존 추상 자료형을 조합하여 새로운 추상 자료형을 정의할 수 있는 능력을 확보하는 것입니다.

 좋은 소프트웨어란 무엇일까? 보통 사용하기 편리하고, 보기 깔끔하고, 원하는 기능이 모두 포함되어 있는 소프트웨어를 떠올린다. 그리고 아주 틀리지 않았다. 대신 소프트웨어공학에서는 확실한 개념을 제시할 뿐이다. 소프트웨어공학에서 말하는 좋은 소프트웨어의 조건으로는 수용성. 의존성. 효율성. 유지보수성. 4가지를 제시한다.

 

 먼저 수용성은, 소프트웨어를 사용하는 사용자가 소프트웨어에 대해 이해하기 쉽고, 소프트웨어를 사용하기 쉽고, 사용자가 사용하는 다른 시스템과 호환이 가능할 때 수용성이 높다고 한다.

 

 의존성이 높다는 말은, 좀 더 쉽게 말하면 신뢰성/보안성/안정성을 확보했다는 의미다. 시스템과 소프트웨어의 일부에서 실패가 발생하더라도, 전체 시스템에 대한 물리적/경제적 피해가 없거나 적다는 뜻이다.

 

 효율성은, 소프트웨어의 응답/처리 시간이 빠르며 적은 자원으로 최대의 성능을 낼때 그리고 시스템 자원의 낭비가 없을 때 효율성이 높다고 한다.

 

 유지보수성은, 소프트웨어가 작성되기 이전이나 이후에, 변화하는 고객의 요구사항을 충족시킬 수 있는지 여부를 의미한다.

 

그리고 추가적으로 소프트웨어가 일반적인 사용자를 대상으로 할 때엔 Generic한 소프트웨어(예: 워드, 포토샵 등),

특정 사용자를 대상으로 할 때엔 Customized 된 소프트웨어(예: 특정 대학 학생들의 개인 사이트, 공항의 관제 시스템 등)라고 한다.

1. 소프트웨어 = 코딩 인가?

 소프트웨어는 project 도중 만들어지는 documents들도 포함된다. 소프트웨어가 필요한 요구사항들을 정리해둔 문서, 설계 방향에 대한 문서, 어떤 class를 이용해 어떤 method를 만들 것인지에 대한 아주 상세한 문서까지.

 

2. 좋은 소프트웨어가 가져야 할 조건은 무엇인가?

  기능 · 성능 · 유지보수의 용이성 · 의존성 · 사용의 용이성

 

3. 소프트웨어 공학이란?

 소프트웨어 생산과 관련된 모든 공학적 원리를 다루는 학문. 시스템 공학의 일부이다.

 

4. 소프트웨어 공학의 주요 과제는?

 다양성, 개발 시간 단축, 신뢰성 있는 소프트웨어 개발

 

5. 최고의 소프트웨어 공학 기술은?

 없다. 어떤 시스템을 개발하는가에 따라 다양한 기술 및 방법론이 사용된다.

[mySQL] substring 함수, 그 외의 함수.
2020. 2. 5. 15:40 - MunJunHyeok

저번 게시글에서 sampleDB를 이용해 집계함수의 사용에 대해 살펴보았습니다.

 

Sample DB 설정 방법은 다음 링크를 참조하세요. (https://m-datastudy.tistory.com/5)

 

이번에는 마찬가지로 SELECT ~ FROM 쿼리(구문)에 사용할 수 있는 집계함수 외의 함수를 알아볼것입니다. 저번 게시물 (https://m-datastudy.tistory.com/10)를 보신 분들은 이제 레코드의 개수나 숫자로 된 레코드 값의 합, 평균 등을 알아볼 수 있고, 특정 기준에 따라 레코드를 묶을 수도 있습니다. 

 

먼저 함수는 저번과 이번 게시물에 적힌 것보다 훨씬 많습니다. 지금 쓰려는 것은 그 중 기본적이라고 생각되는 함수인것입니다.

 

1. SUBSTRING('문자열' , offset, limit) 

SUBSTRING 함수는 문자열에서 원하는 부분만 뽑아내는 함수입니다.

FROM 구문이 반드시 필요하지는 않습니다. 다음과 같이 사용합니다.

-> SELECT SUBSTRING('문자열' , offset, limit);

-> SELECT SUBSTRING('2019-03-19' , 6, 2);

 

또한 모든 함수는 반드시 정해진 인자에 맞춰서 사용해야만 합니다. 인자란 ('문자열', offset, limit)의 부분을 의미합니다.

 

1. '문자열' 부분은 우리가 뽑아내고싶은 글자가 있는 문장이나 긴 텍스트를 넣습니다.

 

2. offset 부분은 저번에 살펴보았던 LIMIT~OFFSET~ 구문처럼 어디서 부터 텍스트를 뽑아낼 것인지 숫자로 정합니다.

예를 들어 '2019-03-19' 문자열에서 첫번째 글자인 '2'가 1번째 글자이고 '0'이 2번째, '1'이 3번째, '9'가 4번째 글자입니다.

 

3. limit 부분은 몇글자를 뽑아낼지 정합니다.

 

 

정리하자면, SELECT SUBSTRING('2019-03-19' , 6, 2); 쿼리는 '2019-03-19'라는 문장의 6번째 글자부터 2글자를 찾아 출력하라는 뜻입니다. 결과값은 '03'이 됩니다. 작은 따옴표 안의 모든 글이 텍스트입니다. 따라서 ' - ' 또한 텍스트입니다.

 

2. TRIM('문자열')

 

TRIM 함수는 문자열 앞 뒤에 있는 공백을 제거합니다. ' 서울특별시 '를 함수 처리 할 경우 '서울특별시'로 출력됩니다.

단, 문자 내부의 공백은 제거되지 않습니다. substring처럼 반드시 FROM이 필요하지는 않습니다.

-> SELECT TRIM(' 문자열 ');

 

앞 뒤의 공백만 제거된다.

 

3. CHAR_LENGTH('문자열'), OCTET_LENGTH('문자열')

 

CHAR_LENGTH 함수는 문자열의 길이. 즉, 글자수를 알려주는 함수입니다. 다음과 같이 사용합니다.

-> SELECT CHAR_LENGTH('문자열');

-> SELECT CHAR_LENGTH('123');

 

123 문자열은 3글자이다. 한글도 사용 가능하다.

OCTET_LENGTH 함수는 문자열의 byte 수. 즉, 용량을 알려주는 함수입니다.

일반적으로 문자 하나 당 숫자 및 영어는 1byte. 한글은 2byte입니다. 다음과 같이 사용합니다.

-> SELECT OCTET_LENGTH('문자열');

-> SELECT OCTET_LENGTH('123abc가나다');

123(숫자, 3byte) + abc(영어, 3byte) + 가나다(한글 6byte)로 모두 합해 12 byte입니다.

 

 

4. ROUND(컬럼명/숫자, 반올림위치)

 

ROUND 함수는 반올림해주는 함수입니다. 어느 위치에서 반올림 할 지도 직접 정할 수 있습니다. 

mySQL에서는 2가 소숫점 둘째 자리로 반올림해줍니다. 1이 첫째 짜리로, -1이 1의 자리, -2가 10의 자리로 반올림해주는 식입니다. 소숫점 둘째 자리에서 반올림 해주는 것이 아니라 결과값이 소숫점 둘째자리로 출력됩니다.

-> SELECT ROUND(컬럼명/숫자, 반올림 위치);

-> SELECT ROUND(컬럼명, 2) FROM 테이블명;

-> SELECT ROUND(5961.6651, 2);

 

컬럼명이 들어갈 경우 컬럼의 숫자가 반올림 됩니다. 컬럼명 일 경우 FROM이 필요하고, 숫자형이어야 합니다.

 

5. CONCAT('문자열1'/컬럼명, '문자열2'/컬럼명)

 

CONCAT 함수는 여러개의 문자열을 합칠 수 있는 함수입니다. 앞 뒤 글자가 합쳐집니다. 컬럼명일 경우엔 자료형이 숫자형 혹은 문자형이어야 합니다. 

 

컬럼명 + 문자열도 가능합니다. 예를 들어,

-> SELECT CONCAT(customerNumber, '번 고객') FROM customers;

일 경우에, 컬럼 내의 모든 레코드의 뒤에 '번 고객'이 합쳐져 출력됩니다.

 

컬럼명 + 문자열의 조합

 

문자열 + 문자열의 조합