반응형
반응형

 

입력받은 url을 다운로드 받고, MP3로 변환하고 싶으면 변환버튼.

다운 받은 파일 리스트 페이지 에서 파일 더블 클릭시 실행.

 

 

 

 

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QHBoxLayout, QPushButton, QLabel, QLineEdit, QScrollArea, QMessageBox
import yt_dlp
import threading
from moviepy.editor import AudioFileClip
 

class MainWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 윈도우 설정
        self.setWindowTitle("YouTube Downloader & MP4 to MP3 Converter")
        self.setGeometry(300, 300, 600, 400)

        # 메인 레이아웃 설정
        self.main_layout = QVBoxLayout()

        # 버튼 레이아웃 (좌에서 우로 배치)
        button_layout = QHBoxLayout()

        # 버튼 1: YouTube URL 다운로드 버튼
        self.youtube_button = QPushButton("Download YouTube Video", self)
        self.youtube_button.clicked.connect(self.show_youtube_download_form)
        button_layout.addWidget(self.youtube_button)

        # 버튼 2: MP4 to MP3 변환 버튼
        self.convert_button = QPushButton("Convert MP4 to MP3", self)
        self.convert_button.clicked.connect(self.confirm_convert_form)  # 확인 창 함수 연결
        button_layout.addWidget(self.convert_button) 

        # 버튼 3: Downloads 폴더의 파일 리스트 보기 버튼
        self.show_files_button = QPushButton("Show Downloaded Files", self)
        self.show_files_button.clicked.connect(self.show_downloaded_files)
        button_layout.addWidget(self.show_files_button)

        # 버튼 레이아웃 추가
        self.main_layout.addLayout(button_layout)

        # YouTube URL 입력 필드 (초기에는 숨김)
        self.url_input = QLineEdit(self)
        self.url_input.setPlaceholderText("Enter YouTube URL here...")
        self.url_input.setVisible(False)  # 초기에는 숨김
        self.main_layout.addWidget(self.url_input)

        # 상태 및 결과 표시 레이블 (스크롤 가능)
        self.result_label = QLabel(self)
        self.result_label.setWordWrap(True)
        
        scroll_area = QScrollArea(self)
        scroll_area.setWidgetResizable(True)
        scroll_area.setWidget(self.result_label)
        self.main_layout.addWidget(scroll_area)

        # 메인 레이아웃 설정
        self.setLayout(self.main_layout)

    def show_youtube_download_form(self):
        # 입력 필드가 이미 있는지 확인 후 없을 때만 추가
        # 입력 필드를 보이도록 설정하고, 플레이스홀더 텍스트 설정
        self.url_input.setVisible(True)
        self.url_input.setPlaceholderText("Enter YouTube URL here...")
        self.url_input.clear()  # 이전 입력값 지우기
        self.result_label.setText("Enter a YouTube URL to download:") 

    def download_video(self):
        url = self.url_input.text().strip()
        if url:
            self.result_label.setText("Downloading... Please wait.")
            threading.Thread(target=self.youtube_download_process, args=(url,)).start()
        else:
            self.result_label.setText("Please enter a valid YouTube URL.")

    def youtube_download_process(self, url):
        ydl_opts = {
            'format': 'best',
            'outtmpl': './downloads/%(title)s.%(ext)s',
            'progress_hooks': [self.progress_hook]
        }
        with yt_dlp.YoutubeDL(ydl_opts) as ydl:
            ydl.download([url])

    def progress_hook(self, d):
        if d['status'] == 'downloading':
            percent = d['_percent_str']
            speed = d.get('speed', 'Unknown')
            eta = d.get('eta', 'Unknown')
            self.result_label.setText(f"Downloading: {percent} - Speed: {speed} - ETA: {eta}s")
        elif d['status'] == 'finished':
            self.result_label.setText(f"Download complete!")

    def confirm_convert_form(self):
        # 확인/취소 메시지 박스를 생성
        reply = QMessageBox.question(self, 'Convert MP4 to MP3',
                                     "Are you sure you want to convert all MP4 files in the folder to MP3?",
                                     QMessageBox.Yes | QMessageBox.No, QMessageBox.No)

        # 사용자가 Yes를 선택한 경우에만 변환 함수 실행
        if reply == QMessageBox.Yes:
            self.show_convert_form()

    def show_convert_form(self):
        # URL 입력창 숨김
        self.url_input.setVisible(False)
        
        # MP4 파일 선택 및 MP3로 변환 메시지 설정
        self.result_label.setText("Converting all MP4 files in the folder to MP3...")
        threading.Thread(target=self.convert_mp4_to_mp3).start()

    def convert_mp4_to_mp3(self):
        folder_path = './downloads'  # MP4 파일이 있는 폴더
         

        for filename in os.listdir(folder_path):
            if filename.endswith(".mp4"):
                mp4_path = os.path.join(folder_path, filename)
                mp3_path = os.path.join(folder_path, f"{os.path.splitext(filename)[0]}.mp3")
                
                if os.path.exists(mp3_path):
                    self.result_label.setText(self.result_label.text() + f"\nSkipping {filename}: MP3 already exists.")
                    continue

                audio_clip = AudioFileClip(mp4_path)
                audio_clip.write_audiofile(mp3_path)
                audio_clip.close()
                self.result_label.setText(self.result_label.text() + f"\nConverted: {filename} to MP3.")

        self.result_label.setText(self.result_label.text() + "\nAll MP4 files converted to MP3.")

    def show_downloaded_files(self):
        # URL 입력창 숨김
        self.url_input.setVisible(False)
        
        # ./downloads 폴더의 파일 리스트를 표시
        folder_path = './downloads'
        if not os.path.exists(folder_path):
            self.result_label.setText("No files found. The downloads folder does not exist.")
            return

        files = os.listdir(folder_path)
        if files:
            file_list = "\n".join(files)
            self.result_label.setText(f"Files in {folder_path}:\n{file_list}")
        else:
            self.result_label.setText("No files found in the downloads folder.")



# PyQt 애플리케이션 실행
if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = MainWindow()
    main_window.show()
    sys.exit(app.exec_())
반응형
반응형

[python]  폴더 안의 모든 mp4 파일을 mp3로 변환하기

 

 

import os
from pathlib import Path
 

from moviepy.editor import *

# MP4 파일이 있는 폴더 경로 지정
folder_path = './downloads'

import file_rename_underbar as fru

# 폴더내의 파일명 rename
fru.replace_spaces_in_filenames(folder_path)


# 폴더 내의 모든 파일 확인
for filename in os.listdir(folder_path):
    if filename.endswith('.mp4'):
        mp4_path = os.path.join(folder_path, filename)
        mp3_path = os.path.join(folder_path, filename.replace('.mp4', '.mp3'))
        
        # 비디오에서 오디오 추출 후 MP3로 저장
        video = VideoFileClip(mp4_path)
        video.audio.write_audiofile(mp3_path)
        video.close()  # 명시적으로 close 호출하여 자원 해제

        print(f"Converted: {filename} to MP3")
    else:
        print(f"Converted Not: {filename} to MP3")

 

 

 

 

반응형
반응형

[python] youtube download 입력받은 url로 다운받기

 

yt-dlp는 YouTube 및 기타 비디오 플랫폼에서 동영상을 다운로드하는 강력한 명령줄 도구입니다. 

pytube보다 다양한 기능을 제공하며, Python 스크립트와 통합하여 사용할 수도 있습니다.

import yt_dlp

def main():
    # 다운로드할 YouTube 비디오의 URL
    #url = 'https://www.youtube.com/watch?v=vjcuQLjSUz4'
    
    
    # 사용자로부터 YouTube 비디오 URL 입력받기
    url = input("다운로드할 YouTube 비디오의 URL을 입력하세요: ")

    # 다운로드 옵션 설정
    ydl_opts = {
        'format': 'best',                   # 최고 화질 선택 (audio와 video 포함)
        'outtmpl': './downloads/%(title)s.%(ext)s',  # 다운로드 파일 경로 및 이름 템플릿
    }

    # yt-dlp를 사용하여 다운로드
    with yt_dlp.YoutubeDL(ydl_opts) as ydl:
        ydl.download([url])

    print("Video has been downloaded successfully!")


# 메인 함수 호출
if __name__ == "__main__":
    main()

 

반응형
반응형

경영진이 긴 프로젝트 일정, 불명확한 요구사항, 마감 기한 미준수에 지쳐 있을 때, 애자일은 더 빠른 구현, 높은 유연성, 비즈니스 요구사항과의 긴밀한 연계를 보장해 전략을 신속히 실현하고 ROI를 높일 해결책처럼 보였다. 하지만 현재 많은 기업이 가시적인 성과 부족에 실망하며 애자일 팀을 해체하고 있다.

애자일의 실패는 방법론 자체의 문제가 아니었다. 진짜 문제는 조직 내부 깊숙이 자리 잡은 전략과 실행의 불일치였다. 전략과 실행을 연계하지 못하면 애자일, 워터폴, 하이브리드 등 어떤 구현 방식도 근본적인 문제를 해결할 수 없다. 애자일이나 다른 접근 방식의 이점을 누리려면 기업은 전략을 정의하고 실행하는 방식부터 개선해야 한다. 조직의 애자일 전환이 실패하는 5가지 이유를 소개한다.

방법론에 치중하고 전략에 소홀

애자일 전환을 시도하는 대부분의 조직은 데일리 스탠드업, 스프린트 계획, 회고, 제품 백로그와 같은 방법론에 지나치게 집중한다. 이런 애자일 관행은 이니셔티브 수행 구조를 제공하지만 더 깊은 문제는 해결하지 못한다. 진정한 과제는 실행 방법이 아니라 전략과 실행을 연계해 목표 비즈니스 성과를 달성하도록 보장하는 일이다.

 

애자일은 잘못 설정된 전략이나 리더십 팀의 전략 표현 및 실행 연계 능력을 개선할 수 없다. 전통적인 프로젝트 관리처럼 애자일은 단순히 도구이자 수단일 뿐, 그 자체가 목적이 아니다. 전략이 명확하지 않고, 우선순위가 정해지지 않았으며, 제대로 전달되지 않는다면 아무리 의도가 좋은 애자일 팀도 어려움을 겪을 수밖에 없다. 이들은 경영진이 기대하는 비즈니스 가치를 창출하지 못한 채 끊임없이 반복한다. 문제는 일하는 방식이 아니라 일하는 내용에 있다.

잘못된 우선순위와 리소스 혼란

사람들은 흔히 애자일이 리소스 충돌과 팀 효율성 문제를 자동으로 해결해 준다고 오해한다. 하지만 리더십이 전략적 우선순위를 명확하게 설정하지 않으면 애자일은 오히려 혼란을 가중시킨다.

애자일 팀이 스프린트 단위로 결과물을 내더라도, 조직이 이니셔티브의 우선순위를 정하지 않으면 리소스는 여전히 중요도가 낮은 프로젝트에 분산된다. 팀은 끊임없이 작업을 전환하고 새로운 우선순위를 쫓아다니며 실제로 작동하지 않는 결과물을 제공하기 쉽다.

 

애자일은 이 문제를 해결할 수 없다. 어떤 방법론도 마찬가지다. 해결책은 리더십의 명확한 우선순위 설정이다. 다시 말해 어떤 프로젝트가 중요하고 어떤 프로젝트를 기다릴 수 있는지 결정해야 한다. 이는 리소스 관리가 아니라 우선순위 설정 문제다. 모든 일을 한꺼번에 하려고 하면 어느 하나도 제대로 할 수 없다.

완벽주의의 함정

애자일 팀은 반복에 갇혀 실질적인 진전 없이 프로세스나 기능을 개선하는 데 매몰될 위험이 있다. 완벽한 코드 작성이나 요구사항 목록 완성과 같은 산출물에 집착하다 보니 비즈니스 가치 창출이 지연된다.

많은 팀이 애자일 전문성을 인정받아 채용됐기 때문에 결과 도출보다는 방법론을 따르는 데 가치가 있다고 믿는다. 진정한 성공이 무엇인지 명확하게 이해하지 못하면 프로세스 완벽주의의 순환에 빠진다. 그러면 애자일이 의미 있는 성과를 달성하기보다는 프레임워크를 준수하는 데만 치중하게 된다.

 

사고방식 전환의 부재

애자일이나 다른 방법론의 진정한 잠재력을 끌어내려면 사고방식의 명확한 전환이 필요하다. 리더는 조직이 달성하려는 목표를 분명히 해야 한다. 프로젝트가 완료됐을 때 성공이란 어떤 모습이며, 비즈니스 목표에 미칠 영향은 무엇일지 파악해야 한다. 핵심 성과 목표를 정의하면 유능한 팀은 획일적인 프로세스를 따르지 않고도 목표에 도달하는 최선의 방법을 찾아낼 수 있다.

전략과 실행의 분리

애자일은 전략과 실행을 분리해 생각하지 않을 때만 효과가 있다. 하지만 대부분의 조직은 이를 별개의 단계로 취급한다. 전략은 경영진이 정의하고 이를 딜리버리 팀에게 전달해 실행하게끔 한다. 처음부터 연계가 없다면 아무리 좋은 구현 방법이라도 성공하기 어렵다. 전략이 명확히 정의되고, 효과적으로 전달되며, 생산적인 방식으로 실현되도록 하는 데 아무도 집중하지 않기 때문이다.

애자일이 성공하려면 전략, 실행, 실현을 연속 및 반복되는 프로세스로 통합해야 한다. 비즈니스 목표를 명확히 정의하고, 실행에 참여하는 모든 사람이 목표를 이해하며, 프로세스가 아닌 결과로 성공을 측정해야 한다. 모든 구성원이 성과를 중심으로 하면, 애자일은 실행을 간소화하고 더 빠르게 가치를 창출할 수 있다.

 

https://www.cio.com/article/3594947/%ec%b9%bc%eb%9f%bc-%ec%95%a0%ec%9e%90%ec%9d%bc-%ec%a0%84%ed%99%98%ec%9d%b4-%ec%8b%a4%ed%8c%a8%ed%95%98%eb%8a%94-%ec%9d%b4%ec%9c%a0-5%ea%b0%80%ec%a7%80.html

반응형
반응형

[python] polar plot에서 한글 사용하기. 

 

Python에서 한글을 matplotlib 플롯에 표시하려면, 폰트를 설정하여 한글이 올바르게 렌더링되도록 해야 합니다. 시스템에 설치된 한글 폰트를 지정하거나, matplotlib에서 기본적으로 한글을 지원하는 폰트를 설정하면 됩니다.

아래는 Example Polar Plot이라는 제목을 한글로 변경하여 출력하는 예제 코드입니다.

 

import matplotlib.pyplot as plt
import numpy as np

# 한글 폰트 설정 (예: Windows에서는 'Malgun Gothic', MacOS에서는 'AppleGothic')
plt.rcParams['font.family'] = 'Malgun Gothic'  # 또는 'AppleGothic' (Mac)
plt.rcParams['axes.unicode_minus'] = False     # 마이너스 기호 깨짐 방지

# 데이터 준비
angles = np.linspace(0, 2 * np.pi, 100)
radii = 1 + np.sin(angles)

# Polar Plot 생성
plt.figure(figsize=(6, 6))
ax = plt.subplot(111, projection='polar')
ax.plot(angles, radii, color='blue', linewidth=2)

# 한글 제목 추가
ax.set_title("예제 polar plot", va='bottom')
plt.show()

코드 설명

  • plt.rcParams['font.family']: 한글을 표시하기 위한 폰트를 지정합니다. Windows에서는 'Malgun Gothic', MacOS에서는 'AppleGothic'을 사용할 수 있습니다.
  • plt.rcParams['axes.unicode_minus'] = False: 마이너스 기호(-)가 깨지지 않도록 설정합니다.
  • ax.set_title("예제 극좌표 플롯", va='bottom'): 제목을 한글로 설정합니다.

이제 matplotlib 플롯에서 한글 제목이 잘 출력될 것입니다.

 

반응형
반응형

훌륭한 팀 구축은 모든 CIO에게 중요한 숙제다. 또한 어려운 과제 중 하나이기도 하다. 실제로 가트너는 IT 인재 전략을 2025년까지 지속될 5가지 일반적인 CIO의 고충 중 하나로 꼽았다.

오늘날 높은 성과를 내는 팀을 구성하려면 CIO는 관리자층에 특히 주의를 기울여야 한다. 이들 중간 관리자층은 IT 인력 대부분의 채용 및 유지와 함께 IT 업무가 제대로 수행되고 하는 데 핵심적인 역할을 한다.

US 실리카의 부사장 겸 CIO 켄 피딩톤은 ““관리자의 성공을 돕는 이야말로 CIO의 책임”이라고 강조했다. 그러나 관리자의 중요성에도 불구하고 여전히 많은 관리자가 제 몫을 해내지 못하는 모습을 많이 목격한다고 그는 전했다. IT 관리자들이 기대에 미치지 못하는 10가지 일반적인 이유, 해결 전략을 살펴본다.

1. 관리자 교육 부재
직원 개발, 참여 및 유지 컨설팅 회사 베브케이앤코(BevKaye&Co_의 설립자이자 CEO인 베브 케이는 많은 IT 관리자가 이전 직책, 주로 기술적인 직책에서 자신을 증명함으로써 관리 직책을 맡는 현실을 지적했다. 직원 관리 방법에 대한 교육은 거의 또는 전혀 받지 못했다는 설명이다.

사실 이 문제는 IT에만 국한된 문제가 아니다. 글로벌 채용 및 인재 자문 회사인 로버트 월터스는 유럽 전문가를 대상으로 한 설문조사에서 관리자의 35%가 관리자 교육을 받은 적이 없다고 전했다.

결과적으로 이러한 관리자들은 업무를 탁월하게 잘 수행하는 것은 고사하고 기본적인 업무를 수행할 준비가 되어 있지 않다고 헬프 뎀 그로우(Help Them Grow), 워치 뎀 고(Watch Them Go) 및 기타 직원 관리 주제에 관한 여러 서적을 집필한 케이는 말했다.

공식적인 교육이 이를 개선하는 데 도움이 될 수 있다. 관리자의 직속 상사가 직접 개입할 수도 있다. 팀과 교류하는 방법, 직원들과 소통하고, 영감을 주는 리더가 되는 방법에 대해 코칭하는 것이다. 고위급 전문가의 멘토링은 유익한 지침을 제공하고 바람직한 관리자 행동으로 안내할 수 있다.

2. 업무 적합성 자체의 문제
뛰어난 기술 직원을 관리자 역할로 승진시키는 관행이 문제라는 지적이 있어 왔지만, 다른 원인도 있다. 카네기 멜론 대학교 하인즈 칼리지의 CIO 임원 프로그램 강사이자 코치인 스티브 아그놀리에 따르면 유능한 전문가는 슈퍼스타 관리자가 될 수도 있고 관리자 역할에 안착하지 못할 수도 있다.

2024년 9월에 로펌 리드 스미스의 CIO 직책에서 은퇴한 아그놀리는, 인재를 올바르게 배치하는 역량을 CIO들이 연마해야 한다고 강조했다. CIO가 각 관리 직책에 필요한 역량이 무엇인지 파악하고, 이를 바탕으로 해당 직무의 요구 사항을 고려할 때 어떤 후보자가 해당 직책을 성공적으로 수행할 수 있는지 판단해야 한다는 조언이다. 이를 테면 꾸준하고 체계적인 접근 방식이 필요한 직무의 경우, 빠른 속도로 틀을 깨는 유형의 관리자가 해당 직책에서 두각을 나타낼 가능성은 낮다.

아그놀리는 또 아무리 잘 맞는 후보자라도 처음부터 기대치를 충족하거나 뛰어넘을 것이라고 기대하는 것은 금물이라고 경고했다. 대신 CIO와 다른 고위 리더는 관리자에게 추가 경험, 교육, 멘토링이 필요한 부분을 파악하여 “그 사람이 기대치를 충족하고 그 이상을 달성한 다음 다음 직책으로 이동할 수 있도록 도와야 한다”라고 그는 말했다.

3. 기대치를 모르는 경우
IT 관리자가 높은 기대에 부응하지 못하는 또 다른 이유는 아무도 그 기대가 무엇인지 말해주지 않았기 때문이다. 이는 의외로 일반적인 문제라고 IT 관리 및 리더십 연구소의 전무 이사 에픽 블룸은 말했다.

그는 “CIO 스스로 설명할 수 있어야 한다. 탁월한 업무 성취가 어떤 모습인지, 훌륭한 관리자와 그렇지 않은 관리자를 구분하는 것이 무엇인지 설명할 수 있어야 한다”라며, “세부적이고 구체적이어야 한다. 관리자에게 그저 특별해야 한다고 말하는 수준이어선 안 된다. 기대치를 뛰어넘는 것이 무엇을 의미하는지 알아야 한다”라고 말했다.

블룸에 따르면 기대치를 뛰어넘는 관리자는 일반적으로 모든 업무 요구 사항을 충족하고 추가적인 가치를 제공하는 방식으로 업무를 수행한다. 예를 들어, 팀이 제시간에 예산에 맞춰 작업을 완료하는 관리자는 기대치를 충족하는 관리자다. 이에 더해 팀원과 비즈니스 파트너가 작업에 대해 좋은 느낌을 받을 수 있는 방식으로 작업을 수행하여 조직에서 IT의 평판을 향상시키는 관리자는 기대치를 뛰어넘는 관리자다.

4. 요구의 우선순위를 모른다
리서치 회사 가트너는 관리자들이 처리할 수 있는 것보다 51% 더 많은 책임을 떠맡는다는 사실을 발견했다. 아그놀리는 IT 분야에서도 많은 관리자가 모든 요구 사항에 대응하기 위해 고군분투하고 있다고 보고 있다며, 그 결과, 이러한 관리자들은 열심히 일했음에도 불구하고 실망스러운 결과에 직면한다고 지적했다.

이를 방지하기 위해 CIO는 관리자에게 조직의 비즈니스 목표와 이러한 목표를 지원하는 IT 업무에 대한 명확한 그림을 제공함으로써 업무 우선순위를 정할 수 있도록 도와야 한다고 그는 덧붙였다. “CIO는 디렉터와 IT 관리자 및 IT 직원이 수행하는 방향과 전략을 정의하는 사람이다. 관리자들이 무엇이 필요한지 명확하게 파악할 수 있도록 할 책임을 CIO 는 가진다”라고 그는 말했다.

또한 아그놀리는 CIO를 비롯한 고위 임원들이 중간 관리자의 주요 업무에 부수적인 프로젝트가 쌓이지 않도록 하라고 조언했다. “관리자의 요구 사항을 파악하고 우선순위를 정하고 우선순위가 바뀌면 그에 따라 [관리자의 업무]를 조정해야 한다”라고 그는 덧붙였다.

중간 관리자 역시 우선순위를 기억해야 한다. 추가 업무 요청이 발생하면 “우리가 언제까지 하기로 합의한 일이 여기 있다. 이게 변화한 것인가?” 또는 ”이 5가지를 앞서 합의했다. 이 작업이 6번이면 적절한가?”라고 말할 수 있어야 한다.

5. 너무 수용적인 태도
사실 IT가 걸림돌이 되지 않고 ‘No라고 말하는 부서’로 여겨지지 않도록 하기 위해 많은 IT 리더들이 모든 요청에 긍정적인 반응을 보이려 함에 따라 문제가 불거진 경향이 있다고 CIO 벤치 코치의 설립자이자 CEO인 래리 본판테는 말했다.

그는 “모든 것에 예라고 대답하는 경향이 있었다. 모든 것에 예라고 대답하면 당장 현업에게 인기를 끌 수 있지만, 성과를 내지 못하면 그 이상으로 인기를 잃게 될 것”이라고 말했다.

즉 성과를 높이고 싶은 관리자는 한계를 설정해야 한다. 그렇다고 해서 항상 ‘안 된다’라고 말하라는 의미가 아니다. 우선순위를 정해야 한다.

본판테는 “요청에 대해 ‘언제, 어떻게’라고 답하는 법을 배울 필요가 있다. 예를 들어 ‘현재 재정적, 인적 자원을 고려할 때 당신이 원하는 다섯 가지 중 세 가지를 할 수 있다’라고 말할 수 있어야 한다”라며, “세 가지 중 어떤 것이 가장 중요할까? 우선순위에서 밀릴 수 있는 것은 무엇인가? 더 많은 일을 우선순위에 두기 위해 멈출 수 있는 일이 있는가?”라고 질문할 수 있다고 말했다.

6. 충분히 경청하지 않는 경우
때로는 속도와 열정이 관리자의 성공을 방해할 수 있다고 경영 코치인 수 코직은 말했다. 관리자들, 특히 직무를 처음 맡은 주니어 관리자들은 자신의 가치를 입증하고 싶어 한다. 또 유능한 문제 해결사였기 때문에 바로 뛰어들어 문제를 해결하고 싶어 한다. “그래서 그들은 너무 일찍 경청을 멈추고 모든 정보를 얻기 전에 행동을 시작하곤 한다”라고 코직은 말했다.

이러한 경향은 많은 IT 관리자가 여전히 가지고 있는 비즈니스, 운영 및 과제에 대한 통찰력 부족으로 인해 더욱 심화될 수 있다.

“그들은 비즈니스가 어떻게 돌아가는지 모르고, IT에 집중하느라 비즈니스가 어떻게 돌아가는지 궁금해하지도 않는다. 비즈니스 세계로 뛰어들기보다는 비즈니스 담당자를 IT 세계로 끌어들이려고 한다”라고 45년간 IT 분야에서 근무하다 7월에 루이지애나 블루 크로스 블루 쉴드의 수석 부사장 겸 CIO로 은퇴한 코지크는 말했다.

기술적으로 훌륭한 솔루션은 관리자의 직책에 필요한 최소한의 요건일 수 있지만, 상급자가 원하는 홈런을 날릴 수 있는 요건은 따로 있다.

그녀에 따르면 비즈니스 파트너와 대화에 참여할 수 있는 기회를 모색함으로써 CIO와 관리자 스스로가 최고의 결과를 제공하는 기회를 가질 수 있다. 예를 들어, 관리자가 전략 회의에 참석하거나 부서장들과 만나 이야기를 듣고 배우는 기회를 가질 수 있다.

7. 각기 다른 사람이다
똑같은 직원은 있을 수 없다. 중간 관리자는 고의 IT 리더와 다른 강점, 약점, 업무 방식을 가지고 있을 가능성이 크다. 일부 상사들은 이 점을 잊고 있다고 피딩턴은 강조했다.

그는 “중간 관리자가 자신과 같기를 기대하는 CIO들이 있다. 해본 일이기 때문에 잘 알고 있다고 생각하기 십상이다. 하지만 한 발짝 물러서서 관리자마다 다르다는 것을 깨달아야 한다. 각자 일하는 방식이 다르기 때문에 우리가 쉽게 할 수 있는 일이라고 해서 모든 사람이 쉽게 할 수 있다고 가정해서는 안 된다”라고 말했다.

다양한 사고와 경험이 직장과 조직의 성공에 도움이 된다는 연구 결과가 확인된 만큼, CIO는 자신이나 다른 고위 리더와 똑같은 강점이나 접근 방식을 가진 관리자를 원하거나 찾아서는 안 된다고 피딩턴은 강조했다.

고위 경영진은 관리자를 평가할 때 이를 염두에 두고 관리자가 필요한 곳에서 필요한 방식으로 코칭하고 지도할 수 있도록 해야 한다.

8. 정체된 상태에 고착
기대치를 뛰어넘지 못하는 관리자가 있다면 정체기에 접어들었기 때문일 수 있다. 어떤 관리자는 현재 위치에 너무 익숙해져서 동기를 찾기 못한다. 이 경우 앞으로 나아갈 동기를 부여할 수 있는 인사이트가 필요하다. 다른 사람들은 앞으로 나아가는 방법을 모를 수 있다. “이 경우에는 다음 단계가 무엇을 의미하는지 알기 위해 코칭이 필요하다”이라고 피딩턴은 말했다.

9. 속도에만 치중한다
IT는 기술 발전과 혁신의 빠른 속도를 따라잡기 위해 노력해야 하지만, IT 관리자가 지나치게 속도에 집착하다 보면 목표를 놓칠 수 있다.

본판테는 “때때로 [관리자들은] 일을 처리하는 데 너무 급급하다. 명확성을 확보하고 모든 이해관계자가 함께 일을 완수하는 데 필요한 시간을 들이지 않는 것이다. 빠르게 움직이지만 결국 엉뚱한 곳에 도착하게 된다”라고 말했다.

물론 관리자(그리고 그들의 상사와 CIO)에게 속도는 중요한 미덕이다. 하지만 모든 사람은 속도를 내기 전에 나침반을 올바른 방향으로 설정하는 데 필요한 시간을 투자해야 한다. “이는 단순히 관리자의 결정이 아니라 조직 문화의 문제다”라고 그는 덧붙였다.

10. 진정한 리더가 아직 아니다
경영 컨설팅 회사 콘 레리의 기술, 운영, 데이터/AI, 정보보안 책임자 부문 글로벌 책임자인 크레이그 스티븐슨에 따르면, IT가 백오피스 부서라는 평판에서 벗어나 비즈니스 성공에 필수적인 역할을 하고 있지만 여전히 많은 IT 관리자의 경우 기본적인 비즈니스 스킬이 부족하다.

효과적인 경청자가 아니며, 아이디어를 명확하게 전달하지 못한다. 다른 사람에게 영향을 미치거나 이해관계자를 효과적으로 조율하지도 못한다. 그리고 팀의 사명과 목표 구축에도 실패한다. “내부적으로 필요한 지원을 받지 못했거나 인재 리더십을 개발하거나 훈련 받지 못했기 때문일 수 있다”라고 스티븐슨은 말했다.

이러한 결핍은 성과 달성에 악영향을 미칠 수 있다. 다른 관리 역량과 마찬가지로 사업부 순환 근무와 같은 교육과 개발을 통해 이러한 문제를 극복할 수 있다고 그는 전했다.

 

https://www.cio.com/article/3591479/%ea%b2%b0%ea%b5%ad%ec%9d%80-cio-%ec%b1%85%ec%9e%84%c2%b7%c2%b7%c2%b7-it-%ec%a4%91%ea%b0%84-%ea%b4%80%eb%a6%ac%ec%9e%90%ea%b0%80-%ec%8b%a4%ed%8c%a8%ed%95%98%eb%8a%94-%ec%9d%b4.html

반응형

+ Recent posts