반응형
반응형

 

[PYTHON] ASCII 배너 생성 프로그램 (Python Code)

 

 

 

 

 

 

"""
                 __  __
    ____  __  __/ /_/ /_  ____  ____
   / __ \/ / / / __/ __ \/ __ \/ __ \
  / /_/ / /_/ / /_/ / / / /_/ / / / /
 / .___/\__, /\__/_/ /_/\____/_/ /_/
/_/    /____/

==================================================
사용된 폰트: digital
--------------------------------------------------
+-+-+-+-+-+-+
|p|y|t|h|o|n|
+-+-+-+-+-+-+


    pyfiglet 라이브러리 설치
    ASCII 배너 생성 프로그램 (Python Code)
    
    pip install pyfiglet
    
    
    파이썬에서 FIGlet 스타일의 ASCII 배너(Banner)를 생성하려면 pyfiglet 라이브러리를 사용하면 됩니다. pyfiglet은 C로 작성된 오리지널 FIGlet 프로그램의 파이썬 구현체입니다.

"""

import pyfiglet
import sys

def generate_ascii_banner(text, font_name='slant'):
    """
    주어진 텍스트와 폰트 이름으로 ASCII 배너를 생성하고 출력합니다.
    
    :param text: ASCII 아트로 변환할 문자열
    :param font_name: 사용할 pyfiglet 폰트 이름 (기본값: 'slant')
    """
    try:
        # pyfiglet Figlet 객체 생성 및 폰트 설정
        fig = pyfiglet.Figlet(font=font_name)
        
        # 텍스트를 ASCII 아트로 변환
        banner = fig.renderText(text)
        
        # 결과 출력
        print("=" * 50)
        print(f"사용된 폰트: {font_name}")
        print("-" * 50)
        print(banner)
        print("=" * 50)
        
    except pyfiglet.FigletError:
        # 존재하지 않는 폰트 이름을 입력했을 때 발생하는 오류 처리
        print(f"\n[오류] '{font_name}' 폰트는 존재하지 않습니다.")
        print("사용 가능한 폰트 목록을 확인해주세요.")
    except Exception as e:
        print(f"\n[예외 발생] 예상치 못한 오류가 발생했습니다: {e}")


# --- 메인 실행 로직 ---
if __name__ == "__main__":
    # 사용자로부터 입력 텍스트 받기
    input_text = input("ASCII 배너로 만들 텍스트를 입력하세요: ")
    
    if not input_text:
        print("입력된 텍스트가 없습니다. 프로그램을 종료합니다.")
        sys.exit()

    # (선택 사항) 다양한 폰트로 테스트
    print("\n--- 다양한 폰트로 테스트 ---")
    
    # 1. 'slant' 폰트 (기본값)
    generate_ascii_banner(input_text, 'slant')
    
    # 2. 'big' 폰트
    generate_ascii_banner(input_text, 'big')
    
    # 3. 'digital' 폰트
    generate_ascii_banner(input_text, 'digital')
    
    # 4. 'banner3-D' 폰트
    generate_ascii_banner(input_text, 'banner3-D')

    # 모든 사용 가능한 폰트 목록을 보려면 다음 코드를 사용하세요.
    # print("\n--- 사용 가능한 모든 폰트 목록 ---")
    # print(pyfiglet.Figlet().getFonts())
반응형
반응형

[AI] 5W1H를 활용한 프롬프트 설계 방법 📝

 

프롬프트 엔지니어링 가이드 : https://www.promptingguide.ai/kr

 

 

5W1H는 AI에게 명확한 컨텍스트와 목표를 제공하여 원하는 결과를 정확하게 얻기 위한 훌륭한 프레임워크입니다.

 

5W1H는 누가(Who), 무엇을(What), 언제(When), 어디서(Where), 왜(Why), 어떻게(How) 요소를 채워 프롬프트를 구체적으로 작성하는 방법입니다. 이는 모델에게 제공하는 정보와 맥락을 명확히 하여, AI가 보다 정확한 답변을 제공할 수 있도록 합니다.


5W1H를 활용한 프롬프트 설계 방법 📝

5W1H(누가, 무엇을, 언제, 어디서, 왜, 어떻게) 각 요소에 맞춰 AI에게 정보를 제공하면, AI는 사용자의 의도를 훨씬 더 잘 파악하고 정확한 결과물을 생성합니다.

1. Who (누가) - 역할 지정

AI에게 특정 전문가의 **역할(Persona)**을 부여하여 답변의 관점과 깊이를 정합니다.

  • Before: 쿼리 만들어줘
  • After: 너는 20년차 MSSQL 데이터베이스 관리자(DBA)야.

2. What (무엇을) - 작업 정의

수행해야 할 **핵심 작업(Task)**을 명확하고 구체적으로 지시합니다.

  • Before: 직원 데이터 좀 줘
  • After: 2024년도에 입사한 서울 지역 근무자들의 이름, 부서, 입사일을 조회하는 쿼리를 만들어줘.

3. When (언제) - 시점 명시

데이터의 시간적 범위를 지정하여 원하는 기간의 정보만 필터링하도록 합니다.

  • Before: 판매 실적 알려줘
  • After: 2025년 3분기(7월 1일부터 9월 30일까지)의 일일 판매 총액을 알려줘.

4. Where (어디서) - 환경/출처 지정

작업이 이루어져야 할 **환경이나 데이터의 출처(Source)**를 알려줍니다. 테이블이나 데이터베이스 이름을 명시하는 것이 대표적입니다.

  • Before: 직원 테이블에서 찾아봐
  • After: SalesDB 데이터베이스의 Employees 테이블과 Departments 테이블을 사용해서 찾아봐.

5. Why (왜) - 목적 설명

이 작업을 수행하는 **궁극적인 목적(Purpose)**을 설명하여 AI가 더 나은 해결책을 제안하도록 유도합니다.

  • Before: 오래된 주문 찾아줘
  • After: 장기 미사용 고객에게 마케팅 이메일을 보내기 위해, 최근 1년 동안 구매 기록이 없는 고객 목록을 추출하고 싶어.

6. How (어떻게) - 형식/조건 지정

결과물의 형식(Format)이나 스타일, 따라야 할 특정 조건을 구체적으로 요구합니다.

  • Before: 쿼리 짜줘
  • After: CTE(Common Table Expression)를 사용해서 쿼리를 작성해 주고, 각 코드 줄마다 한국어로 주석을 상세하게 달아줘. 결과는 Markdown 테이블 형식으로 보여줘.
반응형
반응형

[python]  Faker 라이브러리로 Dummy 데이터 만들기

 

pip install Faker
    
    1.faker는 이름, 주소, 이메일, 전화번호 등 다양한 종류의 가짜 데이터를 만들어주는 파이썬 패키지입니다. 
       Faker 객체를 생성하고, 해당 객체가 제공하는 다양한 메소드를 호출해 원하는 형식의 데이터를 얻을 수 있어요.
    2.Faker는 국가별 언어 설정을 지원해요. 예를 들어, Faker('ko_KR')를 사용하면 한국어 이름, 주소, 주민등록번호 등 

       한국 특화된 데이터를 생성할 수 있습니다.

 

 

""" pip install Faker 

"""

from faker import Faker

# Faker 객체 생성
fake = Faker('ko_KR') # 'ko_KR'은 한국어 더미 데이터를 생성하도록 설정합니다.

# 기본 정보 더미 데이터 생성
print("--- 기본 정보 ---")
print("이름:", fake.name())
print("주소:", fake.address())
print("전화번호:", fake.phone_number())
print("이메일:", fake.email())
print("회사:", fake.company())
print("직업:", fake.job())
print("생일:", fake.date_of_birth())
print("-" * 20)

# 텍스트 및 문장 더미 데이터
print("--- 텍스트 ---")
print("문장:", fake.sentence())
print("단락:", fake.paragraph())
print("텍스트:", fake.text())
print("-" * 20)

# 숫자 및 날짜/시간 더미 데이터
print("--- 숫자/시간 ---")
print("정수:", fake.random_int(min=1, max=100))
print("날짜:", fake.date_this_year())
print("시간:", fake.time())
print("-" * 20)

# 금융 정보 더미 데이터
print("--- 금융 정보 ---")
print("신용카드 번호:", fake.credit_card_number())
print("통화 코드:", fake.currency_code())
print("-" * 20)

# 한국어(ko_KR)에서만 제공하는 특별한 더미 데이터
print("--- 한국어 특화 ---")
print("주민등록번호:", fake.ssn())
print("우편번호:", fake.postcode())
print("-" * 20)

# 여러 개의 데이터 생성
print("--- 사용자 목록 ---")
for _ in range(3):
    print({
        '이름': fake.name(),
        '이메일': fake.email(),
        '주소': fake.address(),
        '나이': fake.random_int(min=20, max=60),
    })
print("-" * 20)
반응형
반응형

왜 우리는 악순환에 빠지는가 (behavioralscientist.org)

 

 

 

https://behavioralscientist.org/why-we-spiral/

 

 

  • 직장에서 작은 상황이 소속감이나 능력에 대한 의문을 불러일으키면, 생각이 꼬리를 물며 부정적 나선형으로 이어질 수 있음
  • 저자는 이를 핵심 질문(core questions), 해석(construal), 석회화(calcification) 의 3단계로 설명하며, 불안과 자기 의심이 어떻게 현실을 왜곡하는지 보여줌
  • 반복되는 부정적 해석은 결국 자기 파괴적 행동을 낳고, 이는 관계·성과·건강까지 악영향을 미침
  • 하지만 이러한 과정은 되돌릴 수 있으며, 지혜로운 개입(wise interventions) 을 통해 작은 계기로도 긍정적 나선형을 촉발할 수 있음
  • 결국 중요한 것은 작은 사건 속에 숨어 있는 “나는 속해 있는가?” “나는 충분한가?” 라는 근본적 질문을 이해하고, 이를 긍정적으로 다루는 것임

상황의 차이: 시니어 직원 vs 신입 직원

  • 당신이 팀의 시니어라고 가정하고, 주간 Zoom 회의에 12분 늦게 들어옴
    • 오디오 연결 후, 오랜 친구가 “왔구나! 시간을 내줘서 고마워”라고 농담 섞인 인사를 함
    • 당신은 웃으며 아침 출근길 교통 체증이나 아이 등교 문제 같은 이유를 설명함
    • 분위기는 자연스럽게 넘어가고, 대화는 업무로 이어지며 당신은 집중해서 일을 이어감
  • 하지만 당신이 아직 적응 중인 신입 직원이라면 상황은 다르게 느껴짐
    • 동일하게 12분 늦게 Zoom에 들어왔을 때, 이번엔 상사의 목소리가 들림
    • “왔구나! 시간을 내줘서 고마워”라는 말에 동료 몇 명이 웃음
    • 당신은 교통이나 아침 사정에 대한 변명을 할까 고민하지만, 대화는 이미 지나가버림

마음속에서 이어지는 생각

  • 대화는 넘어갔지만, 당신의 마음은 멈추지 않음
  • 속으로 질문이 이어짐
    • “상사의 말투에 비꼼이 있었던 걸까?”
    • “내가 접속하기 전에 나에 대해 얘기하고 있었던 걸까?”
    • “내가 여기 어울리는 사람이 맞을까?”
    • “나는 이 일을 잘할 수 있는 사람일까?”
  • 이런 질문은 즉각적이고 무의식적으로 떠오르며, 소속감·가치감·자존감을 위협함
  • 억누르려 하지만 쉽게 사라지지 않고, 한 번 촉발되면 이후의 상황마다 증거가 쏟아져 들어오는 것처럼 느껴짐

부정적 신호의 누적

  • 회의 도중 채팅창에서 내부자 농담이 오가지만 당신은 이해하지 못함 → “나는 여기 속하지 않는구나”라는 생각이 듦
  • 발언 중 동료가 눈을 굴리는 반응을 보임 → “그들은 나를 존중하지 않아”라고 느껴짐
  • 상사가 회의 내내 당신을 무시하는 듯함 → “아무도 나를 보지 않아”라는 결론에 도달함
  • 이러한 생각은 완전히 의식적이지 않더라도, 회의가 끝날 즈음에는 업무 의욕이 크게 줄어듦
  • “내가 뭘 확인해야 했지?”라는 의문이 남으며 집중력이 흐려짐

나선의 가속

  • 회의가 끝난 뒤, 무심코 온라인을 서성이던 중, 아까 눈을 굴린 동료에게서 메시지가 옴
    • “괜찮아? 회의 때 좀 집중을 못 한 것 같았어”
  • 당신은 답장을 하지 않고 무시하지만, 머릿속은 다양한 답변 시나리오로 가득 찼음
    • 소극적·수동 공격적인 답변에서부터, 커리어에 치명적인 반응까지 상상함
  • 결국 휴대폰을 집어 들고, “무엇을 답장할까”라는 고민에 빠짐

자기 패배적 나선의 구조

  • 1. 근본적 질문 등장
    • 정체성, 소속감, 역량에 대한 질문이 배경에 깔려 있음
    • “나는 새로 온 사람, 성공하고 싶고 인정받고 싶지만 과연 그럴 수 있을까?”
  • 2. 부정적 사건 발생
    • 상사의 약간의 비꼼 섞인 말투
  • 3. 질문의 촉발
    • 애매한 상황에서 부정적으로 해석하며 증거를 모으기 시작
    • 과제에 집중하지 못하고, 비관적 가설이 강화
  • 4. 부정적 행동으로 이어짐
    • 예: 동료에게 비꼬는 답장을 보냄
    • 며칠 뒤, 그 동료가 당신에게 냉담한 태도를 보이게 됨
  • 이렇게 작은 순간들이 쌓이며, 자기 패배적 나선형이 점점 속도를 높여감

나선의 장기적 영향

  • 시간이 지나면서 상황은 더욱 악화됨
  • 동료와의 관계가 끊기고, 상사가 준 과제를 망쳐 신뢰를 잃음
  • 1년 뒤 새로운 직장에 가더라도, 동료와의 긴장 관계가 다시 나타남
  • “이 이야기는 어떻게 끝날까? 내가 이 상황을 통제할 수 있을까?”라는 질문이 따라옴

이 상황이 통제 가능할까?

  • 대답은 “그렇다” 임. 누구나 이 상황에 대한 선택권을 가지고 있음
  • 부정적 나선이나 피드백 루프는 피할 수 없는 운명이 아님
  • 오히려 작은 노력으로 초기에 끊어내어 장기적 재앙을 예방할 수 있음
  • 더 나아가, 같은 과정이 긍정적 나선으로 작동해 행복·성공·성장을 촉진할 수도 있음
  • 결국 같은 메커니즘이 우리를 끌어내릴 수도, 끌어올릴 수도 있음

나선을 이해하는 세 가지 C

  • 앞서 설명한 1~4 단계 과정을 더 명확히 하기 위해, 저자는 세 가지 핵심 개념을 제시함
  • 이를 “세 가지 C” 라 부르며, 나선이 긍정적일 수도 부정적일 수도 있는 과정을 설명함
    • Core questions (핵심 질문)
    • Construal (해석)
    • Calcification (석회화)
  • Core questions (핵심 질문)
    • 누구나 삶 속에서 마주하는 근본적 질문들:
      • “나는 누구인가?”
      • “나는 속하는가?”
      • “나는 충분한가?”
    • 이 질문들은 자아와 삶을 정의하는 기준이 됨
      • 어떤 관계를 맺을지, 무엇을 성취할지, 어떤 사람이 될지를 결정함
    • 한동안은 안정적일 수 있지만, 중요한 전환점에서 다시 떠올라 불안과 집착을 일으킴
    • 이런 질문이 미해결 상태일 때, 세상을 보는 렌즈처럼 작동하며 인식과 행동에 영향을 줌
  • Construal (해석)
    • 우리는 세상을 있는 그대로 보지 않고, 머릿속에 이미 있는 정보와 믿음을 바탕으로 해석함
    • 중요하다고 느끼는 주제만 집중하고, 다른 신호는 걸러냄
    • 사례: 한 교수의 수업 실험
      • 반을 둘로 나누고, 한쪽엔 여행과 리비아 이야기를, 다른 쪽엔 신발 사이즈 이야기를 들려줌
      • 이후 “한 단어를 적으라” 하자, 전자는 “Tripoli”, 후자는 “Triple E”라고 적음
    • 사회적 상황에서도 마찬가지로, 위험이나 위협으로 느껴지는 신호에 집중함
      • 숲속에서 호랑이가 있다고 믿으면 작은 소리도 모두 호랑이로 해석
      • 직장에서 새로 온 사람은 상사의 말투에서 비꼼을 듣지만, 오래된 친구였다면 그렇지 않음
    • 핵심 질문이 미해결이면, 우리는 작은 사건에서도 이를 의심을 입증하는 증거로 여김
      • 결국 확증 편향에 사로잡혀, 사소한 단서도 기존 불안을 강화하는 증거로 해석함
  • Calcification (석회화)
    • 부정적 생각과 감정이 고착화되는 과정임
    • 종종 자신의 행동이 원인이 되어 더 굳어짐
      • 예: 데이트가 잘 안 됐을 때 “나는 사랑받을 수 없어”라고 생각하면, 다음 만남도 실패로 이어짐
    • 이러한 과정이 반복되면, 낭만적 관계, 학업, 건강, 가족관계 전반에서 부정적 나선이 발생함
      • 시험 실패 → “나는 못한다” → 수업 포기
      • 치료副작용 → 병이 더 심각하다고 해석 → 치료 회피
      • 아이와 싸움 → “나는 나쁜 부모”라는 낙인 → 다음 번엔 더 심한 분노 표출
    • 이런 자기 파괴적 루프가 성취·건강·관계·삶의 행복을 조금씩 갉아먹음

Spiraling up – 긍정적 나선

  • 우리의 어려움은 부분적으로는 해석과 추론에서 비롯되므로, 이를 바꾸면 기회가 생김
  • 연구자들은 사람들이 양갈래로 갈 수 있는 초기 순간을 포착해, 더 나은 사고 방식을 제안함
  • 이를 통해 부정적 나선이 아닌 긍정적 나선으로 방향을 틀 수 있음
  • 지혜로운 개입(Wise interventions)
    • 핵심 질문에 더 나은 답을 제공하는 작은 개입이 큰 변화를 만듦
    • 사례:
      •  21분 개입으로 1년 뒤 부부 관계가 개선됨
      • 한 장의 편지가 청소년을 범죄에서 멀어지게 함
      • 엽서 발송만으로 2년간 자살률을 절반으로 낮춤
      • 대학 신입생의 1시간 소속감 성찰이 10년 뒤 삶의 만족도와 성공을 높임
    • 저자는 이를 Ordinary Magic(평범한 마법) 이라 부름

부정적 나선은 필연이 아니다. 우리 자신과 타인을 위해, 초기에 끊어낼 수 있는 방법이 있다.

  • 티프빗(Tifbit) – 작은 사실, 큰 이론
    • 저자의 대학 1학년 경험
      • 가을날 자전거를 타고 가다 학생들이 In-N-Out 버거 트럭 앞에 모여 있는 모습을 봄
      • 미시간 출신이라 In-N-Out을 몰랐던 그는, 소외감을 느끼고 혼자 식당으로 향함
      • “버거 때문에 내가 소속되지 않는다고 느끼다니, 우습다”라고 생각했지만, 속마음은 달랐음
    • 이후 형의 연애 실패 경험을 계기로 “티프빗(tiny fact, big theory)”이라는 용어를 만들었음
      • 사소한 사실이 큰 불안과 의문을 촉발하는 현상
      • 실제로는 단순한 사건이지만, ‘나는 여기 속하는가?’ ‘나는 친구를 사귈 수 있을까?’ 같은 큰 질문을 드러냄
  • 작은 사건의 의미
    • 겉보기엔 하찮은 경험이라도, 그 밑바닥에는 진짜이자 합리적인 질문이 숨어 있음
    • 작은 계기에 크게 반응하는 것은, 우리를 정의하는 근본적 의문을 드러내는 단서
    • 예: 만약 당시 누군가 “모두 처음엔 외롭다. 심지어 캘리포니아 출신 학생도 새로운 공동체를 찾고 있다”는 말을 해주었다면
      • 그는 줄을 서서 버거를 맛보고, 대화를 나누며 친구를 만들 수 있었을 것

결론

  • 티프빗은 단순한 사실이 아니라, 삶을 정의하는 질문으로 이어지는 실마리
  • 지혜와 친절, 약간의 거리감을 갖고 보면 웃을 수 있지만, 동시에 주의 깊게 다루어야 할 신호
  • 작은 사건을 긍정적으로 해석하면, 더 나은 관계와 경험으로 이어지는 긍정적 나선을 시작할 수 있음
반응형
반응형

voronoi diagram for generative geometry using python

 

파이썬을 사용하여 제너레이티브 지오메트리(generative geometry)를 위한 보로노이 다이어그램(Voronoi diagram)을 생성하는 것은 널리 사용되는 강력한 기법입니다.

 

이 과정은 일련의 무작위 점을 생성한 다음, SciPy와 같은 라이브러리를 사용하여 이 점들에 대한 근접성에 따라 평면을 분할하는 보로노이 다이어그램을 계산하는 것을 포함합니다.

 

이렇게 분할된 공간은 복잡하고 유기적으로 보이는 디자인을 만드는 데 사용될 수 있습니다.

 

 

"""
파이썬을 사용하여 제너레이티브 지오메트리(generative geometry)를 위한 
 보로노이 다이어그램(Voronoi diagram)을 생성하는 것은 널리 사용되는 강력한 기법입니다. 
이 과정은 일련의 무작위 점을 생성한 다음, SciPy와 같은 라이브러리를 사용하여 
 이 점들에 대한 근접성에 따라 평면을 분할하는 보로노이 다이어그램을 계산하는 것을 포함합니다.
이렇게 분할된 공간은 복잡하고 유기적으로 보이는 디자인을 만드는 데 사용될 수 있습니다.
"""

import numpy as np
from scipy.spatial import Voronoi, voronoi_plot_2d
import matplotlib.pyplot as plt

# 1. Generate 20 random 2D points
points = np.random.rand(20, 2)

# 2. Compute the Voronoi diagram
vor = Voronoi(points)

# 3. Plot the diagram
fig = voronoi_plot_2d(vor)
plt.show()

핵심 라이브러리

파이썬에서 보로노이 다이어그램을 생성하고 시각화하려면 주로 다음 라이브러리가 필요합니다:

  • NumPy: 수치 연산을 위해, 특히 점들의 좌표를 생성하고 다루는 데 사용됩니다.
  • SciPy: 핵심 보로노이 다이어그램 계산을 위해. scipy.spatial.Voronoi 클래스가 주요 도구입니다.
  • Matplotlib: 결과 다이어그램을 플롯하고 시각화하는 데 사용됩니다.

기본 보로노이 다이어그램 생성 단계

다음 코드는 이 라이브러리들을 사용한 간단한 예시를 보여줍니다.

  1. 무작위 점 생성: 보로노이 셀의 "씨앗(seeds)" 또는 "생성자(generators)" 역할을 할 일련의 무작위 2D 점을 만듭니다.
  2. 보로노이 다이어그램 계산: 점 집합을 scipy.spatial.Voronoi에 전달합니다. 이 객체는 보로노이 셀의 꼭짓점과 그 관계를 포함하여 다이어그램에 대한 모든 필수 정보를 담고 있습니다.
  3. 다이어그램 플롯: scipy.spatial.voronoi_plot_2d를 사용하여 결과를 시각화합니다. 이 함수는 보로노이 객체를 받아 다이어그램의 선과 꼭짓점을 플롯하며, 종종 원래의 점들이 함께 겹쳐서 표시됩니다.

 

반응형
반응형

Being good isn’t enough

잘하는 것만으로는 충분하지 않음 (joshs.bearblog.dev)

 

  • 기술적 역량만으로는 경력이 일정 수준에서 한계에 부딪힘
  • 영향력을 높이기 위해선 기술 역량, 제품 사고, 프로젝트 실행, 사람과의 협업 능력이라는 네 가지 축을 균형 있게 키워야 함
  • 약점을 찾고 성장하기 위해서는 피드백과 겸손이 핵심이며, 특히 존경하는 사람의 피드백을 받아 행동으로 옮기는 것이 가장 빠른 방법
  • 단순히 일을 잘하는 것뿐 아니라 보여주고 공유하는 것이 필요하며, 에이전시(agency, 주도성)를 갖고 스스로 기회를 만들고 실행하는 태도가 중요
  • 궁극적으로 원하는 것을 얻는 길은 그에 걸맞은 자격을 갖추는 것이며, 이는 노력 이상의 성장을 위해 반드시 필요한 접근방법임

 

 

커리어 조언의 모호함

  • 커리어 조언은 사람마다 좋은 조언의 기준이 다르기 때문에 모호함
    • 동일한 직함을 가진 두 사람도 필요한 조언은 크게 다를 수 있음
    • 누군가는 좋아하는 일, 다른 이는 의미 있는 일, 또 다른 이는 승진을 추구
  • 따라서 하나의 답은 없으나, 공통적으로 기술적 능력은 경력의 출발점임
    • 채용된 이유인 핵심 업무에서 탁월해야 하며, 초기에는 이로 주목받음
    • 예: 더 나은 코드, 보고서, 디자인은 자연스럽게 인정을 받음

기술적 실력만으로는 부족함

  • 초기에는 기술적 역량만으로도 인정받고 성장 가능
  • 하지만 일정 시점 이후에는 기술적 능력만으로는 차별화가 어려워짐
    • 동료들도 비슷한 수준의 기술적 역량을 보유
    • 더 큰 영향력을 발휘하려면 다른 역량 필요

영향력 확대를 위한 4가지 역량

  • 성공적인 노력은 4가지 핵심 역량의 결합으로 완성
    • 기술적 능력: 선택한 전문 분야에서의 숙련도
    • 제품 사고: 가치 있는 일을 식별하는 능력
    • 프로젝트 실행: 계획을 실현하는 능력
    • 인간관계 기술: 타인과 협업하고 영향을 미치는 능력
  • 이 4가지 역량은 모든 성공적 프로젝트에 필수적
    • 의미 있는 일을 실제로 일어나게 하는 것
    • 예: 제품 개발, 팀 협업, 프로젝트 완료 모두 이 역량의 조화 필요

역량 개발 방법

  • 네 가지 영역은 시간이 지나며 자연스럽게 익혀지지만, 의식적으로 훈련하면 더 빠르게 성장 가능
    • 자신의 약점을 찾는 데에는 피드백 겸손함이 핵심
      • 피드백은 개선점을 보여주고, 겸손함은 이를 받아들이게 함
    • 존경하는 사람에게 피드백을 요청하고 즉시 행동으로 옮김
      • 완벽한 계획을 기다리지 말고, 행동이 우선
  • 멘토링, 프로젝트 제안, 결과물 발표 등으로 역량 강화
    • 타인에게도 기회를 제공하며 협업 환경 조성

공개적으로 행동하기

  • 업무 성과는 스스로 말하지 않으면 인정받기 어려움
  • 일을 하고 그 결과를 공개적으로 보여주는 것이 중요, “일이 알아서 말해준다” 는 가정은 잘못임
    • 공개적으로 작업을 공유하고 결과를 알리는 습관 필요
    • 예: 프로젝트 발표, 팀 내 공유, 멘토링 활동

에이전시의 중요성

  • Agency(주도성, 자율적 실행력) 은 학력, 자격증, 운 보다 강력한 요소
    • 고주도성(High-agency) 인 사람은 일을 주도적으로 실현
    • 저주도성(low-agency) 인 사람은 기회를 기다리며 정체됨
  • 주도성은 선택 가능한 특성: 스스로 행동을 선택하면 됨

결론과 추천 자료

  • 경력 성장은 노력뿐 아니라 전략적 접근 필요
    • 단순히 열심히 일하는 것 이상으로, 영향력 확대에 집중할 것
    • 노력과 성장의 차이는 약점 보완·가시화·에이전시 실천에 달려 있음
  • 장기적으로 원하는 것을 얻는 최선의 방법은 그에 걸맞은 자격을 갖추는 것
  • 추천 도서
    • The Staff Engineer’s Path by Tanya Reilly: 경력 관리에 대한 깊은 통찰 제공. 매년 다시 읽음

 

 

 

반응형

+ Recent posts