SlideShare a Scribd company logo
import brain
‘''
Принимают за hard skills, увольняют из-за soft skills.
Paul Galushko
for Pre-party at NodeUkraine
'''
class User(object):
def __init__(self, name):
self.name = name
self.is_i_am_fired = False
self.reasons_of_fire = []
self.brain = brain
def my_status(self):
if not self.is_i_am_fired:
return " I'm fine."
return "{}, ты уволен потому, что: {}".format(self.name, ','.join(self.reasons_of_fire))
def you_are_fired(self, reasons):
self.is_i_am_fired = True
self.reasons_of_fire = reasons
mihvey = User("Михвей")
asilia = User("Асиля")
etel = User("Этель")
foma = User("Фома")
class Manager(User):
reason = ""
def __init__(self, name, users):
self.users = users
super(User, self).__init__(name)
def check_team_status(self):
pass
def get_opinion_by_user(self):
pass
@staticmethod
def check_health(self):
self.check_team_status()
for user in self.users:
opinion = self.get_opinion_by_user()
self.check_results(user, opinion)
self.check_teamwork(user, opinion)
self.fire_fighting(user, opinion)
def check_results(self, user, opinion):
reasons = []
if Fire.check_hard_skills(opinion):
reasons.append(Fire.check_hard_skills(opinion))
if Fire.check_sabotage(opinion):
reasons.append(Fire.check_hard_skills(opinion))
if Fire.check_bad_work(opinion):
reasons.append(Fire.check_hard_skills(opinion))
user.you_are_fired(reasons)
def check_teamwork(self, user, opinion):
reasons = []
if Fire.check_bad_worker(opinion):
reasons.append(Fire.check_hard_skills(opinion))
if Fire.check_bad_team_player(self.reason):
reasons.append(Fire.check_hard_skills(opinion))
if Fire.check_toxicity(opinion):
reasons.append(Fire.check_hard_skills(opinion))
if Fire.check_lack_of_motivation(opinion):
reasons.append(Fire.check_hard_skills(opinion))
user.you_are_fired(reasons)
def fire_fighting(self, user, opinion):
reasons = []
if Fire.check_for_staff_cuts(opinion):
reasons.append(Fire.check_hard_skills(opinion))
user.you_are_fired(reasons)
manager = Manager("Ким", [mihvey, asilia, etel, foma])
class Fire(object):
@staticmethod
def check_hard_skills(reason):
reasons = [
"ты не умеешь.",
"ты не умеешь работать с Docker, AWS, etc.",
"ты не тестируешь свой код.",
"в твоем коде слишком много багов.",
"твой код слишком дурно пахнет.",
"твой код невозможно поддерживать."
]
if reason in reasons:
return reason
@staticmethod
def check_sabotage(reason):
reasons = [
"ты сказал: “рабочий день уже окончен, завтра приду и разберусь”.",
"ты соврал.",
"ты слил код.",
"ты разгласил важную инфу.",
"ты обиделся и сорвал проект."
]
if reason in reasons:
return reason
@staticmethod
def check_bad_work(reason):
reasons = [
"ты не можешь (не умеешь планировать, постоянно срываешь сроки и все завалил).",
"ты сделал не то что я хотел.",
"ты хотел как лучше, но при этом стало все хуже.",
"ты взял слишком много задач, заблокировал всех, запорол все и не сделал."
]
if reason in reasons:
return reason
def check_bad_worker(reason):
reasons = [
"ты пишешь код ради кода.",
"ты занимался посторонними делами в рабочее время.",
"ты в рабочее время прокачивал за счет нанимателя свои скиллы.",
"ты создавал видимость бурной работы без результатов.",
"твои перекуры, ютьюбчик и фейсбучек заколебали."]
if reason in reasons:
return reason
def check_bad_team_player(reason):
reasons = [
"ты игнорировал рабочие митинги.",
"ты безынициативен и безответственен.",
"ты поймал звезду.",
"ты сплетничаешь и плетешь интриги.",
"тебе все равно."]
if reason in reasons:
return reason
def check_toxicity(reason):
reasons = [
"твоя перманентная хандра утомила.",
"у тебя все виноваты.",
"у тебя постоянно горит.",
"ты слишком конфликтен.",
"твои комментарии унизительны."]
if reason in reasons:
return reason
def check_lack_of_motivation(reason):
reasons = [
"у тебя нет мотивации.",
"ты выгорел.",
"ты почил на лаврах и остановился в развитии."]
if reason in reasons:
return reason
@staticmethod
def check_for_staff_cuts(reason):
reasons = [
"ты слишком дорог.",
"тебя не было видно.",
"команда работала плохо и мы лишились проекта.",
"ты выбрал неправильный проект."
]
if reason in reasons:
return reason
class SmartUser(User):
@staticmethod
def learning():
return (
"Учитесь не только программированию.",
"Учитесь продавать себя.",
"Учитесь публично выступать.",
"Учитесь слушать и слышать.",
"Учитесь не переходить на личности. Это не очень хорошее решение, а Устин хороший",
"Почитайте про эмоциональный интеллект, умение работать в команде.",
"Сходите к психотерапевту."
)
@staticmethod
def business_understanding():
return (
"Разберитесь зачем нужна эта программа.Зачем нужна эта фича.",
"Разузнайте про доменную отрасль",
"Посмотрите на мир глазами заказчика",
"Посмотрите на мир глазами пользователя",
"Различного рода встречи невероятно полезны."
)
@staticmethod
def fire_fighting():
return (
"Станьте над ситуацией, просто смотрите фильм с хорошей графикой.",
"У вас, ваших коллег, начальника, ПМ, заказчика - разные миры, желания и устои.Это
надо понимать и жить станет легче",
"Хороших решений может быть два и больше.И если оно не твое - не значит, что оно
плохое",
"Признавать, что вы чего-то не знаете, это нормально.",
"Задайте “Пять почему”"
)
@staticmethod
def mindset():
return "Учитесь не влиянию на других. Качайте свое отношение к другим, к команде и к
работе."
you = SmartUser("You")
class ConnectToSpeaker():
def __init__(self):
self.linkedin = "https://www.linkedin.com/in/galushkopavlo/"
self.facebook = "https://www.facebook.com/paul.galushko"
def you_are_welcome(self):
print("Linkedin: {}".format(self.linkedin))
print("Facebook: {}".format(self.facebook))
connect = ConnectToSpeaker()
connect.you_are_welcome()

More Related Content

PPTX
Разработка на стероидах или как я перестал бояться и полюбил свою IDE
PDF
"Definition of Done: Deadline driven development" Vitaliy Ratushnyi
PDF
"Muses Code JS or How Communities Change People" Tanya Butenko
PDF
"It’s about time to embrace Streams" Luciano Mammino
PDF
"Node.js and Serverless" Viacheslav Panevskyi
PDF
"Lift me up. Mentorship 101" Tanya Butenko
PDF
"Using Blockchain in Node.js project: JavaScript Ninja’s experience" Maksym D...
PDF
"Black Clouds and Silver Linings in Node.js Security" Liran Tal
Разработка на стероидах или как я перестал бояться и полюбил свою IDE
"Definition of Done: Deadline driven development" Vitaliy Ratushnyi
"Muses Code JS or How Communities Change People" Tanya Butenko
"It’s about time to embrace Streams" Luciano Mammino
"Node.js and Serverless" Viacheslav Panevskyi
"Lift me up. Mentorship 101" Tanya Butenko
"Using Blockchain in Node.js project: JavaScript Ninja’s experience" Maksym D...
"Black Clouds and Silver Linings in Node.js Security" Liran Tal
Ad

"Принимают за hard skills, увольняют из-за soft skills" Павел Галушко

  • 1. import brain ‘'' Принимают за hard skills, увольняют из-за soft skills. Paul Galushko for Pre-party at NodeUkraine '''
  • 2. class User(object): def __init__(self, name): self.name = name self.is_i_am_fired = False self.reasons_of_fire = [] self.brain = brain def my_status(self): if not self.is_i_am_fired: return " I'm fine." return "{}, ты уволен потому, что: {}".format(self.name, ','.join(self.reasons_of_fire)) def you_are_fired(self, reasons): self.is_i_am_fired = True self.reasons_of_fire = reasons mihvey = User("Михвей") asilia = User("Асиля") etel = User("Этель") foma = User("Фома")
  • 3. class Manager(User): reason = "" def __init__(self, name, users): self.users = users super(User, self).__init__(name) def check_team_status(self): pass def get_opinion_by_user(self): pass @staticmethod def check_health(self): self.check_team_status() for user in self.users: opinion = self.get_opinion_by_user() self.check_results(user, opinion) self.check_teamwork(user, opinion) self.fire_fighting(user, opinion)
  • 4. def check_results(self, user, opinion): reasons = [] if Fire.check_hard_skills(opinion): reasons.append(Fire.check_hard_skills(opinion)) if Fire.check_sabotage(opinion): reasons.append(Fire.check_hard_skills(opinion)) if Fire.check_bad_work(opinion): reasons.append(Fire.check_hard_skills(opinion)) user.you_are_fired(reasons) def check_teamwork(self, user, opinion): reasons = [] if Fire.check_bad_worker(opinion): reasons.append(Fire.check_hard_skills(opinion)) if Fire.check_bad_team_player(self.reason): reasons.append(Fire.check_hard_skills(opinion)) if Fire.check_toxicity(opinion): reasons.append(Fire.check_hard_skills(opinion)) if Fire.check_lack_of_motivation(opinion): reasons.append(Fire.check_hard_skills(opinion)) user.you_are_fired(reasons) def fire_fighting(self, user, opinion): reasons = [] if Fire.check_for_staff_cuts(opinion): reasons.append(Fire.check_hard_skills(opinion)) user.you_are_fired(reasons) manager = Manager("Ким", [mihvey, asilia, etel, foma])
  • 5. class Fire(object): @staticmethod def check_hard_skills(reason): reasons = [ "ты не умеешь.", "ты не умеешь работать с Docker, AWS, etc.", "ты не тестируешь свой код.", "в твоем коде слишком много багов.", "твой код слишком дурно пахнет.", "твой код невозможно поддерживать." ] if reason in reasons: return reason @staticmethod def check_sabotage(reason): reasons = [ "ты сказал: “рабочий день уже окончен, завтра приду и разберусь”.", "ты соврал.", "ты слил код.", "ты разгласил важную инфу.", "ты обиделся и сорвал проект." ] if reason in reasons: return reason @staticmethod def check_bad_work(reason): reasons = [ "ты не можешь (не умеешь планировать, постоянно срываешь сроки и все завалил).", "ты сделал не то что я хотел.", "ты хотел как лучше, но при этом стало все хуже.", "ты взял слишком много задач, заблокировал всех, запорол все и не сделал." ] if reason in reasons: return reason
  • 6. def check_bad_worker(reason): reasons = [ "ты пишешь код ради кода.", "ты занимался посторонними делами в рабочее время.", "ты в рабочее время прокачивал за счет нанимателя свои скиллы.", "ты создавал видимость бурной работы без результатов.", "твои перекуры, ютьюбчик и фейсбучек заколебали."] if reason in reasons: return reason def check_bad_team_player(reason): reasons = [ "ты игнорировал рабочие митинги.", "ты безынициативен и безответственен.", "ты поймал звезду.", "ты сплетничаешь и плетешь интриги.", "тебе все равно."] if reason in reasons: return reason def check_toxicity(reason): reasons = [ "твоя перманентная хандра утомила.", "у тебя все виноваты.", "у тебя постоянно горит.", "ты слишком конфликтен.", "твои комментарии унизительны."] if reason in reasons: return reason def check_lack_of_motivation(reason): reasons = [ "у тебя нет мотивации.", "ты выгорел.", "ты почил на лаврах и остановился в развитии."] if reason in reasons: return reason
  • 7. @staticmethod def check_for_staff_cuts(reason): reasons = [ "ты слишком дорог.", "тебя не было видно.", "команда работала плохо и мы лишились проекта.", "ты выбрал неправильный проект." ] if reason in reasons: return reason
  • 8. class SmartUser(User): @staticmethod def learning(): return ( "Учитесь не только программированию.", "Учитесь продавать себя.", "Учитесь публично выступать.", "Учитесь слушать и слышать.", "Учитесь не переходить на личности. Это не очень хорошее решение, а Устин хороший", "Почитайте про эмоциональный интеллект, умение работать в команде.", "Сходите к психотерапевту." ) @staticmethod def business_understanding(): return ( "Разберитесь зачем нужна эта программа.Зачем нужна эта фича.", "Разузнайте про доменную отрасль", "Посмотрите на мир глазами заказчика", "Посмотрите на мир глазами пользователя", "Различного рода встречи невероятно полезны." ) @staticmethod def fire_fighting(): return ( "Станьте над ситуацией, просто смотрите фильм с хорошей графикой.", "У вас, ваших коллег, начальника, ПМ, заказчика - разные миры, желания и устои.Это надо понимать и жить станет легче", "Хороших решений может быть два и больше.И если оно не твое - не значит, что оно плохое", "Признавать, что вы чего-то не знаете, это нормально.", "Задайте “Пять почему”" )
  • 9. @staticmethod def mindset(): return "Учитесь не влиянию на других. Качайте свое отношение к другим, к команде и к работе." you = SmartUser("You")
  • 10. class ConnectToSpeaker(): def __init__(self): self.linkedin = "https://www.linkedin.com/in/galushkopavlo/" self.facebook = "https://www.facebook.com/paul.galushko" def you_are_welcome(self): print("Linkedin: {}".format(self.linkedin)) print("Facebook: {}".format(self.facebook)) connect = ConnectToSpeaker() connect.you_are_welcome()