Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр  Что обсуждали люди в 2024 году? Самое время вспомнить — через виммельбух Пикабу «Спрятано в 2024»! Печенька облегчит поиск предметов.

Спрятано в 2024

Поиск предметов, Казуальные

Играть

Топ прошлой недели

  • dec300z dec300z 11 постов
  • AlexKud AlexKud 43 поста
  • DashaAshton DashaAshton 7 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
2
hypo69
hypo69
11 месяцев назад
Программирование на python

10 минут кода: Расширяем возможности `pprint()`⁠⁠

Привет!  Я покажу о свою реализацию функции pprint(). Это простая функция, которая помогает сделать вывод данных в консоль более читаемым. Когда у тебя есть сложные структуры, например, большие словари, списки или объекты pprint() «красиво» выводит их на экран. Функция также выводит на экран N строк текстовых файлов

pprint(dict)

pprint(list)

pprint(Object)

pprint('text.txt', max_lines=10)

и получить данные в «читабельном» виде.

сразу код функции:


import json

import csv

import pandas as pd

from pathlib import Path

from typing import Any

from pprint import pprint as pretty_print


def pprint(print_data: str | list | dict | Path | Any = None, depth: int = 4, max_lines: int = 10, *args, **kwargs) -> None:

""" Pretty prints the given data in a formatted way.


The function handles various data types and structures such as strings, dictionaries, lists, objects, and file paths.

It also supports reading and displaying data from CSV and XLS/XLSX files.


Args:

print_data (str | list | dict | Any, optional): The data to be printed. It can be a string, dictionary, list, object, or file path. Defaults to `None`.

depth (int, optional): The depth to which nested data structures will be printed. Defaults to 4.

max_lines (int, optional): Maximum number of lines to print from a file (CSV/XLS). Defaults to 10.

*args: Additional positional arguments passed to the print or pretty_print function.

**kwargs: Additional keyword arguments passed to the print or pretty_print function.


Returns:

None: The function prints the formatted output and does not return any value.


Example:

>>> pprint("/path/to/file.csv", max_lines=5)

>>> pprint("/path/to/file.xls", max_lines=3)

"""

if not print_data:

return


def _read_text_file(file_path: str | Path, max_lines: int) -> list | None:

"""Reads the content of a text file up to `max_lines` lines."""

path = Path(file_path)

if path.is_file():

try:

with path.open("r", encoding="utf-8") as file:

return [file.readline().strip() for _ in range(max_lines)]

except Exception as ex:

pretty_print(print_data)

return None


def _print_class_info(instance: Any, *args, **kwargs) -> None:

"""Prints class information including class name, methods, and properties."""

class_name = instance.__class__.__name__

class_bases = instance.__class__.__bases__


print(f"Class: {class_name}", *args, **kwargs)

if class_bases:

print([base.__name__ for base in class_bases], *args, **kwargs)


attributes_and_methods = dir(instance)

methods = []

properties = []


for attr in attributes_and_methods:

if not attr.startswith('__'):

try:

value = getattr(instance, attr)

except Exception:

value = "Error getting attribute"

if callable(value):

methods.append(f"{attr}()")

else:

properties.append(f"{attr} = {value}")


pretty_print("Methods:", *args, **kwargs)

for method in sorted(methods):

pretty_print(method, *args, **kwargs)

print("Properties:", *args, **kwargs)

for prop in sorted(properties):

pretty_print(prop, *args, **kwargs)


def _print_csv(file_path: str, max_lines: int) -> None:

"""Prints the first `max_lines` lines from a CSV file."""

try:

with open(file_path, newline='', encoding='utf-8') as csvfile:

reader = csv.reader(csvfile)

header = next(reader)

print(f"CSV Header: {header}")

for i, row in enumerate(reader, start=1):

print(f"Row {i}: {row}")

if i >= max_lines:

break

except Exception as ex:

pretty_print(print_data)


def _print_xls(file_path: str, max_lines: int) -> None:

"""Prints the first `max_lines` rows from an XLS/XLSX file."""

try:

df = pd.read_excel(file_path, nrows=max_lines)

print(df.head(max_lines).to_string(index=False))

except Exception as ex:

pretty_print(print_data)


def json_serializer(obj):

"""Custom handler for unsupported data types in JSON."""

if isinstance(obj, Path):

return str(obj)


# Check if it's a file path

if isinstance(print_data, str):

if Path(print_data).is_file():

file_extension = Path(print_data).suffix.lower()


if file_extension == '.csv':

_print_csv(print_data, max_lines)

elif file_extension in ['.xls', '.xlsx']:

_print_xls(print_data, max_lines)

elif file_extension == '.txt':

content = _read_text_file(print_data, max_lines)

if content:

for line in content:

print(line)

elif file_extension == '.json':

try:

with open(print_data, 'r', encoding='utf-8') as json_file:

json_data = json.load(json_file)

print(json.dumps(json_data, default=json_serializer, indent=4))

except Exception as ex:

pretty_print(print_data)

else:

pretty_print(print_data, *args, **kwargs)

else:

# If the data is not a file, pretty print or handle it as a class

try:

if isinstance(print_data, dict):

print(json.dumps(print_data, default=json_serializer, indent=4))

elif isinstance(print_data, list):

print("[")

for item in print_data:

print(f"\t{item} - {type(item)}")

print("]")

else:

print(print_data, *args, **kwargs)

if hasattr(print_data, '__class__'):

_print_class_info(print_data, *args, **kwargs)

except Exception as ex:

pretty_print(print_data)

код на github

gist

Для запуска и проверки кода я сделал Интерактивный блокнот google colab

Как работает функция:

  1. Печать строковых данных**: Если предоставленный аргумент является строкой, функция проверяет, представляет ли она путь к файлу. Если это так, функция считывает содержимое файла и выводит его. Если строка не является путем к файлу, функция просто выводит строку.

  2. Печать списков**: Если аргумент является списком, функция преобразует все объекты `Path` в списке в строки и использует стандартную функцию `pprint` для форматирования списка.

  3. Печать словарей**: Если аргумент является словарем, функция преобразует все объекты `Path` в строки, чтобы обеспечить корректную сериализацию в JSON. Затем она выводит словарь в формате JSON с отступами для повышения читаемости

  4. Печать объектов**: Если аргумент является объектом, функция использует `pprint`, чтобы вывести объект вместе с дополнительной информацией о его классе, методах и свойствах. Функция выводит имя класса, его базовые классы и перечисляет методы и свойства объекта, упрощая анализ его структуры.

  5. Вывод в консоль произвольное количество сток из тексовых файлов (txt, json,csv,xls)

Примеры.

Все примеры можно запускать в блокноте jupyter notebook https://colab.research.google.com/drive/1uBcZuMabkix2qpNJtNk...
Здеськраткое руководство как пользоваться блокнотом

Пример 1: Строка

pprint("Hello, World!")

Результат:

'Hello, World!'

Пример 2.1: Список

from pathlib import Path

example_list = [

"Hello, World!",

Path("C:/example/path"),

42,

{"key": "value"}

]

example_list_2 = [

"Python is fun!",

Path("/home/user/project"),

99,

{

"name": "Alice",

"age": 30,

"languages": ["Python", "JavaScript", "C++"]

}

]

pprint(example_list)

Результат:

[

Hello, World! - <class 'str'>

C:/example/path - <class 'pathlib.PosixPath'>

42 - <class 'int'> {'key': 'value'} - <class 'dict'>

[1, 2, 3] - <class 'list'>

]

Пример 2.2: Несколько списков

pprint(example_list+example_list_2)

Результат:

[

Hello, World! - <class 'str'>

C:/example/path - <class 'pathlib.PosixPath'>

42 - <class 'int'> {'key': 'value'} - <class 'dict'>

Python is fun! - <class 'str'>

/home/user/project - <class 'pathlib.PosixPath'>

99 - <class 'int'>

{'name': 'Alice', 'age': 30, 'languages': ['Python', 'JavaScript', 'C++']} - <class 'dict'>

]

Пример 3: Словарь

from pathlib import Path

import json

example_dict = {

"name": "Alice",

"age": 30,

"address": {

"street": "123 Main St",

"city": "Wonderland"

},

"files": [Path("C:/file1.txt"), Path("C:/file2.txt")]

}

pprint(example_dict)

Результат:

{

{

"name": "Alice",

"age": 30,

"address":{

"street": "123 Main St",

"city": "Wonderland"

},

"files": [ "C:/file1.txt", "C:/file2.txt" ]

}

Пример 4.1: Объект класса MyClass

class MyClass:

def __init__(self, name, value):

self.name = name

self.value = value

def display(self):

return f"{self.name} has value {self.value}"

# Create an instance of the class

obj = MyClass(name="TestObject", value=100)

# Print object information

pprint(obj)

Результат:

<__main__.MyClass object at 0x797a27f17b50>

Class: MyClass

['object']

'Methods:'

'display()'

Properties:

'name = TestObject'

'value = 100'

Пример 4.2: Объект класса Path

import os

from pathlib import Path

current_path = Path(os.getcwd()).resolve()

pprint(current_path)

Результат:

/content

Class: PosixPath

['Path', 'PurePosixPath']

'Methods:'

...

'absolute()'

'as_posix()'

'as_uri()'

'chmod()'

'cwd()'

'exists()'

'expanduser()'

'glob()'

'group()'

'hardlink_to()'

'home()'

...

Properties:

...

'anchor = /'

'drive = '

'name = content'

'parent = /'

'parents = <PosixPath.parents>'

"parts = ('/', 'content')"

'root = /'

'stem = content'

'suffix = '

'suffixes = []'

Пример 5: печать содержимого файла JSON

import json

from pathlib import Path

dct = {

"имя": "Руслан",

"возраст": 25,

"город": "Москва",

"навыки": ["Python", "Наука о данных"]

}

# Save the dictionary to a JSON file

with open(Path('example_json.json'), 'w', encoding='utf-8') as f:

json.dump(dct, f, ensure_ascii=False, indent=4)

# Pretty print the JSON file

pprint('example_json.json')

Результат:

{

"имя": "Руслан",

"возраст": 25,

"город": "Москва",

"навыки": [ "Python", "Наука о данных" ]

}

Пример 6: печать первых 10 строк из файла ТХТ

from pathlib import Path


s = """1: В лесу родилась ёлочка,

2: В лесу она росла.

3: Зимой и летом стройная,

4: Зелёная была.


5: Метель ей пела песенку:

6: «Спи, ёлочка, бай-бай!»

7: Мороз снежком укутывал:

8: «Смотри, не замерзай!»


9: Трусишка зайка серенький

10: Под ёлочкой скакал.

11: Порою волк, сердитый волк,

12: Рысцою пробегал.


13: Чу! Снег по лесу частому

14: Под полозом скрипит.

15: Лошадка мохноногая

16: Торопится, бежит."""


# Save text file

with open(Path('example_txt.txt'), 'w', encoding='utf-8') as f:

f.write(s)

max_lines=10 # <- количество выводимых на печать строк

# Call pprint with the correct filename

pprint('example_txt.txt', max_lines=max_lines)

Результат:

1: В лесу родилась ёлочка,

2: В лесу она росла.

3: Зимой и летом стройная,

4: Зелёная была.

5: Метель ей пела песенку:

6: «Спи, ёлочка, бай-бай!»

7: Мороз снежком укутывал:

8: «Смотри, не замерзай!»

Пример 7: печать первых двух строк из файла CSV

import csv

from pathlib import Path


# Содержимое example.csv:

csv_data = """имя,возраст,город

Алексей,30,Москва

Борис,25,Санкт-Петербург

Виктор,35,Казань

Дмитрий,28,Новосибирск

Екатерина,22,Екатеринбург

"""

# Создание CSV файла

with open(Path('example.csv'), 'w', encoding='utf-8') as f:

f.write(csv_data)

pprint('example.csv', max_lines=2)

Результат:

CSV Header: ['имя', 'возраст', 'город']

Row 1: ['Алексей', '30', 'Москва']

Row 2: ['Борис', '25', 'Санкт-Петербург']

Пример 8: печать первых трёх строк из файла XLS

import pandas as pd

from pathlib import Path

# Create a sample DataFrame and save it as an Excel file

data = {

"имя": "Руслан",

"возраст": 25,

"город": "Москва",

"навыки": ["Python", "Наука о данных"]

}

df = pd.DataFrame(data)

# Save the DataFrame as an .xlsx file

df.to_excel('example.xlsx', index=False)

# Print the file name using pprint

pprint('example.xlsx', max_lines=3)

Результат:

имя возраст город навыки

Руслан 25 Москва Python

Руслан 25 Москва Наука о данных

Для запуска и проверки кода я сделал Интерактивный блокнот google colab. здесь все наглядно с примерами

Показать полностью
[моё] Программа Гайд Программирование Python Junior Утилиты Для начинающих Инструкция Jupyter notebook Длиннопост
16
DELETED
1 год назад

Ответ на пост «Поиск работы программистом в 2023 году»⁠⁠1

Привет, направляю тебе лучи поддержки и удачи. Без опыта работы действительно сложно найти будет работу. Но некоторый опыт можно получить и без работы. Придумай что тебе по силам может быть и реализуй пет проект. Возьму любую идею, в чем ты силен, вот управлял рестораном ты, ну и реализуй чегонить про рестораны, какая у вас там специфика, систему учета рабочего времени официантов. Или сделай игру в шахматы, в дурака. Прямо бекенд, простой фронт. С этим уже чтото можно будет пытаться устроится на работу. Я в индустрии много лет, и раньше часто проводил собесы, и брал новичков, именно с такими проектами. А просто чтобы после курсов ктото устроился на работы, к сожалению реальных людей таких не знаю, но очень надеюсь что у тебя получится.

Без рейтинга Сила Пикабу Программирование Junior Python Программист IT HH Поиск работы Удаленная работа Длиннопост Текст Ответ на пост
3
8
DjoTT9Tka
DjoTT9Tka
1 год назад
Программирование на python

Маленькое (Ламповое?) сообщество⁠⁠

Всем привет, пишу пост 3ий раз в жизни, до этого был вот этот:

Небольшой туториал(а может и нет)о том как можно пробиться в IT нишу(опыт junior Django backend разработчика)

Прошло N-oe количество лет, за это время было много взлетов и падений, отличных работ и поиск новых, огромное время на обучение и как оказалось невероятно трудный путь. В данный момент я СТО одной из команд, но хотелось бы написать не об этом...

У нас есть малый и ламповый чатик (ну мы стараемся быть ламповыми, но там как пойдет на самом деле:), за это время почти все активные пользователя этого чата нашли работу, кому-то мы помогли, кто-то совершенно сам.

Так же скидываем материалы различные стараемся помогать чем можем. Как мне кажется огромное преимущество нашего чата это то что там можно не бояться задать даже глупый вопрос, на него ответят и не засмеют, чего мне в своё время не хватало.

Так как мы достаточно закрытое сообщество у нас джуны уже закончились:) Поэтому хотели бы, если кому вдруг интересно, предложить наш чатик в помощь или просто кто хочет пообщаться, кому это интересно, так же велком.

Денег никаких ничего не стоит, подписок никогда не будет, каких-то сборов средств / донатов / курсов платных так же не планируется. Исключительно небольшое закрытое общественное движение:)

Кому интересно вот тг нашего сообщества : t.me/LampHelpGroup

Показать полностью
Обучение Учеба Программист Образование Программирование Python Джанго Рассказ IT Junior Чат Реклама Текст Telegram (ссылка)
0
15
Shawurma
Shawurma
1 год назад
Инкогнито

Идут переписывать легаси код⁠⁠

Источник

Идут переписывать легаси код Программирование, IT юмор, Программист, Юмор, IT, Junior, Linux, Удаленная работа
[моё] Программирование IT юмор Программист Юмор IT Junior Linux Удаленная работа
1
0
a.muzyka
1 год назад

Junior разработчики врут об опыте работы. Проблема ли это для HR?⁠⁠

В любом опросе/топике можно яро отстаивать свою точку зрения. Но, ИМХО, если вы не Junior или HR, докопаться до истинны в данном вопросе будет довольно трудно. Это связано с тем, что вы всего лишь сторонний наблюдатель. Поэтому самый эффективный способ получить достоверные данные — спросить действующих лиц.

Мы проводили проблемные интервью с HR-ами и Junior-ами в рамках развития своего ED-tech/HR-tech проекта. На момент публикации статьи проведено 12 интервью с Junior и 15 с HR. Выборка небольшая, но её достаточно, чтобы увидеть 80% ситуации на рынке.

  • Junior

    • 5 без опыта / 10 - меньше 1 года опыта работы в IT

      • 7 из них закончили какие-либо IT-курсы

      • 4 имеют профильное образование в IT

      • Средний возраст респондентов - 21 год

  • HR

    • 3 работают в компаниях до 40 - 60 человек

    • 4 работают в компаниях 80 - 100 человек

    • 8 работают в HR агенствах

      • Опрашиваемых в среднем нанимает БигТех

Накручивют ли Juniorы опыт в резюме? Почему?

Краткий ответ: Накручивают, но не все

Junior разработчики врут об опыте работы. Проблема ли это для HR? Развитие, IT, Junior, Отдел кадров, Длиннопост

Отличная картинка всё из того же обсуждения

Сложная экономическая ситуация на IT-рынке СНГ за последние три года вынудила компании пересмотреть свою стратегию набора персонала. Многие из них, сталкиваясь с финансовыми трудностями, прикрыли программы стажировок и сократили набор Junior специалистов. Эта реакция рынка оказала воздействие на ситуацию в рекрутинге и сформировала плодотворную почву для явления, каким является ложь в резюме.

На фоне сложной рыночной конкуренции многие курсы продолжали рассказывать потенциальным студентам о легкости трудоустройства в IT и перспективах быстрого обогащения после их завершения

Пердложение упало, спрос продалжал расти...

В условиях дефицита вакансий люди начали прибегать к различным стратегиям, чтобы выделиться среди конкурентов. Самая главная из которых - чутка подкрутить опыт

Кто-то добавляет себе полгода коммерческого опыта, чтобы быть похожим на Junior+, кто-то ставит себе 1.5 года на фрилансе, чтобы найти первую работу. В своем стремлении выделиться на фоне конкуренции, некоторые кандидаты идут даже дальше. Они не только завышают свой опыт, но и прибегают к крайним мерам, краже чужих пет-проектов и представлению их как своих собственных на платформах типа GitHub

Особенно это актуально для таких направлений как React/Vue и Python, где по 3к откликов на вакансию уже стало своего рода нормой.

Junior разработчики врут об опыте работы. Проблема ли это для HR? Развитие, IT, Junior, Отдел кадров, Длиннопост

Пара цитат из обсуждений с Junior специалистами:

  • Про накрутку опыта

    • Ну у меня нету выхода. Я уже 4 месяца откликаюсь на все вакансии. В среднем из 30 откликов отвечают по 2-3 (Junior React Developer)

    • Хз, я не врал в резюме. Но мне повезло, так как я прошёл тестовый отбор на стажировку. Оттуда меня сразу взяли на работу (Junior Angular Developer)

    • Нам после курсов рекомендовали ставить 3 месяца опыта, так как практика у нас проверялась наставником (Junior React Developer)

  • Про петпроекты

    • Не брал чужих напрямую. Я брал чужую реализацию ToDo, и на её основе делал свою, которую и заливал (Junior React Developer)

    • Мы активно пили микропроекты на курсах. Так что нигде брать не пришлось. Все свои

  • Про сертификаты и т. д.

    • Я прикрепил сертификат от курсов в Linkedin. Так же у меня в отзывах на том же Linkedin прикреплён ревью моего наставника с буткемпа

Однако следует задаться вопросом: насколько эти небольшие «исправления» в резюме действительно оказывают влияние на поиск работы?

На практике опыт работы для Junior-специалистов редко становится определяющим фактором при принятии решения о найме.

Процесс найма со стороны HR. Влияет ли накрутка опыта?

Краткий ответ: накрутка опыта почти не влияет

HR отмечают, что цифры опыта в резюме представляют лишь первый этап отбора. Несмотря на увеличивающееся число вранья в резюме, это пока не становится для HR критической проблемой. Разнообразие в выборке соискателей на Junior вакансии варьируется от 0 до 2 лет опыта, что подчеркивает динамичность и неоднозначность этой категории.

Ниже скидываю скрипт, который я сформировал на основе разговоров с HR. Тут сразу можно добавить, что во многом для популярных направлений роль играет удача. Так как при 3к отзывов рекрутёр физически не сможет отсмотреть всех, поэтому чаще выбираются для собеседования не самые лучшие, а первые найденные, подходящие по критериям

Примерный скрипт подбора Senior JUNIOR специалиста.

На это прошу обратить внимание, так как процессы для найм middle/senior совсем другие. Так что нет смысла в комментах писать, что вы, как сениор, ни за что бы не согласились на бесплатное тестовое :)

  1. Если на вакансию выделен достаточный блок времени

    1. Смотрим резюме (ключевые скилы, локация, зп)

      • Отметаются люди с "шаблонными" резюме после курсов

      • Отметаются люди без ключевых скиллов

      • Если речь не о стажировке - отметаются люди только с опытом на фрилансе

      • Отметаются те, кто в чёрном списку у HR (обзывался, плевался и тд)

        • Даже у джуниоров мир тесен :)

      • Возраст имеет значение

        • Если вся комадна 30+ -> более охотно посмотрят на 25-летнего чем на 20-летнего

    2. Даём тестовое на 1-2 часа (Обычно это какая-то заготовка CRUD. Кандидата просим внести 2-3 изменения)

      • Тех, кто не хочет делать или делает долго - отсеиваем

        • Тех кто просит оплату - тем более

      • Особенно это актуально на "популярные" направления по типу JS, Python

        • Интересный факт, что до проверки задания может даже не дойти. Например если человека уже подобрали. Но такие задания выступают базовым фильтром. Отделить тех, что может делать что-то по тз и тех кто по каким-то причинам не может

    3. Проверяем софты

      • Обычно на позицию Junior такой звонок не занимает больше 10 минут

    4. Тех собес

      • Если было ТЗ - обычно задаются какие-то вопросы по нему

      • Если ТЗ не было - вопросы по ключевым скиллам + какие-то абстрактные на подумать

      • Можно провести лайв код и дать какую-то простую задачку с боевого проекта

  2. Если времени мало (Для Junior позиций редкий случай)

    1. Отсев по резюме

      • Смотрим наличие вышки (любой) (7 из 15 подтвердили)

        • Простой показатель того, что чел умеет долго работать над одной целью и доводить дело до конца. Даже если оно ему не надо

      • Отсев с любыми красными флагами

        • Это могут быть: курсы, формулировки опыта, отсутствие или наличие каких-то полей в резюме. (Сильно не помечал этот пункт, так как почти все называли разные red флаги. Часто даже противоречивые)

    2. Скрининг

      • Могут быть использованы сторонние системы скрининга для автоматизации

        • Для быстрого прогона отлично подходят, так как дают отчёты по целым батчам кандидатов

      • Тестовые не дают, так как для их проверки требуется время

    3. Совмещённый софт + хард

      • Быстрые вопросы по основам - такие же быстрые ответы

        • Могут быть использованы сторонние системы скрининга

Пара цитат из обсуждений с HR специалистами:

  • Про опыт работы

    • Если мы говорим про Junior, то мне плевать сколько у человека опыта работы. Главное чтобы не 2+ и не фриланс. Только таких стараюсь обходить стороной

    • Я всегда смотрю в первую очередь на совпадению ключевых навыков. Так как кандидатов очень много, приходится отсеивать по любым доступным критериям

  • Про отбор кандидатов

    • Обычно для позиции Junior вакансии отбираются по ключевым словам. В редких случаях мы направляем резюме кому-то из разработчиков. А в основном это происходит не раньше выполнения тестового задания

    • На пет проекты я не смотрю. Для меня это не гарант совсем. На сертификаты в линкедине и так далее тоже

С точки зрения HR‑специалиста можно сделать несколько важных выводов о жесткости рынка подбора Junior специалистов.

В первую очередь, процесс отбора осложняется высоким конкурентным давлением, вызванным большим числом кандидатов на каждую вакансию.

Это, в свою очередь, приводит к необходимости проведения быстрого и эффективного отсева, где даже незначительные детали могут стать решающими факторами.

Дикий отсев, связанный с тем, что рынок переполнен соискателями, вынуждает HR‑специалистов использовать жесткие критерии, чтобы сузить круг потенциальных кандидатов как можно сильнее.

Эпилог

В этой статье я не хотел задеть чьи-то чувства/эго/опыт и тд. Моя цель - предоставить информацию, основанную на результатах небольшого исследования и услышать обратную связь в комментариях. Любые дополнения и новые идеи приветствуются. Готов обновлять статью по мере поступления новой информации

Показать полностью 2
Развитие IT Junior Отдел кадров Длиннопост
1
2
Soffrick
Soffrick
1 год назад
Лига фрилансеров

На примере собаки и копания ям объясняю разницу между Junior и Senior⁠⁠

[моё] Маркетинг Предпринимательство Карьера Junior Видео YouTube
7
79
Gizmo98
1 год назад

Этапы становления junior - senior⁠⁠

Этапы становления junior - senior
Картинка с текстом Программист IT IT юмор Junior Программирование
5
0
Tiarihon
1 год назад

1с программирование⁠⁠

Дд, подскажите пожалуйста, хочу начать изучать 1с. Кто работает, подскажите, какие ключевые навыки нужно изучить(что стать Jun)
В YouTube очень много не понятного ( по началу), подскажите с чего начать. И стоит покупать курсы?

[моё] 1С Программирование Junior Текст
17
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии