пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅ
Слишком длинный поисковый запрос.
По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
IT-отрасль постоянно развивается и трансформируется, а с ней растет и спрос на специалистов. От веб-разработчиков до аналитиков данных, от продакт менеджеров до дизайнеров — для каждой профессиональной сферы есть площадки и ресурсы с вакансиями. В этой статье мы рассмотрим основные платформы: вы узнаете, где лучше искать работу, на каких площадках можно встретить вакансию мечты и как вам помогут соцсети и telegram-каналы.
Где искать работу: сайты с вакансиями
Чтобы устроиться на хорошую работу, важно уметь выделиться из толпы и привлечь внимание будущего работодателя. Для этого лучше всего подойдет размещение своего резюме на сайте с вакансиями. Рассказываем про топ-7 российских ресурсов, на которых можно находить вакансии в своей сфере.
HeadHunter
Любой человек, когда-либо искавший работу, знаком с этой площадкой — и все же не упомянуть ее в контексте поиска работы в IT было бы непростительно. На HeadHunter всегда есть огромная выборка вакансий для любых IT-направлений, поэтому обратите внимание на этот ресурс при поиске работы.
Хабр Карьера
Где искать работу кроме HH? Здесь, в экосистеме Хабра — платформы, собравшей вокруг себя мощное IT-комьюнити. Бонусом на ресурсе можно почитать полезные статьи, ознакомиться с рейтингами и посмотреть, как себя презентуют другие специалисты.
Geekjob
Этот ресурс интересен тем, что здесь можно искать работу анонимно — когда потенциальный работодатель находит вас сам. Это полезно и в том случае, если вы хотите оградиться от назойливых или нерелевантных предложений о работе: например, где искать работу программисту с большим опытом, чтобы его не преследовали рекрутеры? Geekjob прекрасно подойдет для этой задачи.
SuperJob
Ресурс с удобными фильтрами по зарплате, графику и отраслям. Если вам важно увеличить охват вашего резюме, выложите его здесь помимо других сайтов.
Работа.ру
Еще один простой и удобный агрегатор вакансий. Чтобы повысить шансы на просмотр, пишите сопроводительные письма для компаний, а резюме делайте лаконичным и информативным.
БУДУ
Сервис поиска работы в IT и не только. Удобная навигация: разделе «Компании» можно подробнее узнать о работодателях и отфильтровать нужные вакансии. А еще БУДУ ведет телеграм-канал с полезными советами и подборками какансий.
Соцсети
Кажется, что искать вакансии соцсетях — несерьезно, не лучше ли обратиться к серьезным агрегаторам, где можно искать работу, не отвлекаясь на посты и сообщения? Не совсем так: использовать социальные сети для трудоустройства IT — удобно, а еще это дает преимущества, недоступные на сайтах.
Широкий выбор вакансий: социальные сети сегодня предоставляют доступ к колоссальному количеству вакансий. Вы можете найти предложения как от крупных мировых компаний и стартапов, так и небольшие фриланс-проекты. Такой выбор позволит найти работу, которая соответствует вашим интересам и навыкам.
Прямое общение с работодателями: социальные сети позволят вам легко связаться с потенциальными работодателями. Вы можете отправлять сообщения и задать вопросы сразу — это делает процесс поиска работы эффективнее.
Актуальная информация: в соцсетях вы всегда можете получить актуальную информацию как в целом о рынке труда в IT-сфере, так и о конкретной компании. Вы всегда будете в курсе последних трендов, новых вакансий и изменений в сфере технологий.
Сообщество и поддержка: во многих соцсетях есть группы и комьюнити, где вы можете общаться с другими IT-специалистами, делиться опытом и получать советы по поиску работы. Это позволит получать полезный опыт и чувствовать принадлежность к общей цели.
Легкое обновление профиля: в социальных сетях можно без труда поддерживать актуальность своего профиля — добавлять новые навыки и проекты, делиться достижениями. Это сделает вас более привлекательными для потенциальных работодателей.
А еще поиск работы в соцсетях — это гибкость и удобство, так как вы можете редактировать резюме, откликаться на вакансии и переписываться с эйчарами в любое время и с любого устройства. В каких соцсетях лучше искать работу?
LinkedIn — платформа, которую невероятно ценят HR-специалисты в IT. Если вы думаете, где искать работу программистом, создание профиля на LinkedIn становится просто обязательным шагом. Не забывайте регулярно обновлять свой блог, писать на актуальные темы, добавлять в друзья потенциальных коллег и эйчаров, комментировать посты и общаться.
В Telegram есть множество тематических каналов, посвященных IT-вакансиям. Вы можете выбрать каналы, которые соответствуют вашим интересам и экспертизе, чтобы видеть только релевантные предложения. Вот несколько каналов с вакансиями, на которые можно подписаться:
IT Вакансии {Разработка | QA | DevOps | Management}
Telegram IT Job
Remote IT (Inflow)
Job for Frontend (JavaScript + Node.js) developers
Вакансии и Стажировки от MyResume
Devops Jobs — вакансии и резюме
Работа в геймдеве (вакансии)
PHP — вакансии, поиск работы и аналитика
QA — вакансии
Jobs Code: IT вакансии
Работа в ИТ
Dart Jobs
Вакансии Backend/Frontend
JavaScript Jobs — вакансии и резюме
Mobile Dev Jobs — вакансии и аналитика
Job for Junior
Работа для программистов
В какой соцсети вы бы ни искали работу, всегда проверяйте достоверность работодателей и вакансий, прежде чем отправлять свое резюме или личные данные.
Где можно искать работу за рубежом
Ожидается, что к концу 2023 года глобальные расходы на IT во всем мире увеличатся примерно на 4,66 трлн долларов, а значит, вырастет и число рабочих мест. Так что сейчас лучшее время, чтобы искать работу за границей. Приведем несколько ресурсов, которые вам в этом помогут.
Glassdoor предоставляет информацию о зарплатах, отзывы о компаниях и список актуальных вакансий. Также здесь можно читать интервью с сотрудниками компаний.
Indeed является крупнейшим поисковиком вакансий в мире.
Monster — это еще один крупный ресурс для поиска работы, который позволяет создавать профили, загружать резюме и искать вакансии по разным критериям.
Dice — это специализированный ресурс для поиска работы в IT и технологических областях. Здесь можно найти множество вакансий и информацию о рынке труда.
AngelList: — это платформа, специализирующаяся на стартапах и венчурных инвестициях. Здесь можно найти вакансии в технологических стартапах.
Kaggle Jobs — если вы занимаетесь искусственным интеллектом или машинным обучением, вы можете искать вакансии на Kaggle Jobs.
Кстати, крупные российские рекрутинговые платформы, такие как Headhunter и SuperJob, также ориентированы на другие регионы. Многие компании, особенно крупные международные корпорации, ищут специалистов и сотрудников не только внутри страны, но и за ее пределами. Это делает их удобными для поиска работы как на местном, так и на международном рынке труда.
Где искать работу на фрилансе
Фриланс — это не только картинка из интернета, где сотрудник сидит на пляже с ноутбуком. Порой это может быть труднее офисной рутины — нужно уметь рассчитывать свое время, общаться напрямую с заказчиками и быть готовыми работать даже в выходные. Чтобы не разочароваться в формате такой работы, протестируйте ее на коротком промежутке времени. Приведем несколько фриланс-площадок, где можно найти задачи по душе.
Programmer Meet Designer
Workzilla
UpWork
People Per Hour
Guru
IFreelance
Weblancer.net
Freelance.ru
FL.ru
Freelancehunt.com
FreelanceJob.ru
Чтобы выбрать фриланс-ресурс, который вам подойдет, ознакомьтесь с обзорами и отзывами на него и подробно изучите условия каждой площадки.
Что в итоге?
Ответы на вопрос «на каких сайтах и где искать работу» настолько разнообразны, что каждый может найти оптимальный путь к своей идеальной карьере. От мировых лидеров в сфере найма до уютных локальных комьюнити в социальных сетях, от зарубежных работодателей до работы внутри России — IT раскрывает все дороги к успеху. Помните, что при выборе площадки для поиска работы важно учитывать свои цели, интересы и амбиции, и использовать все возможности на максимум.
Желание использовать данные с внешних сервисов это вполне обычная практика. Так как многие из этих сервисов доступны по HTTP(S) (REST API, например), то в этой статье мы хотим показать простой способ обращения к этим сервисам по cURL и обработку данных в случае, если сервер вернет JSON. Все взаимодействия будут выполняться из диалплана.
Простой cURL запрос
В диалплане Asterisk существует функция CURL, которая позволяет получить содержимое WEB или FTP страницы. Синтаксис запроса следующий:
CURL(url,post-data)
url - URL, к которому мы будем выполнять обращение;
post-data - по умолчанию будет выполнен GET – запрос. Если в данном параметре будут указаны различные значения, то будет выполнен POST запрос с указанными в переменной данными;
Например:
exten => _X.,1,Set(C_RESULT=${CURL(//merionet.ru/rest?num=84991234567)})
Здесь мы выполним GET запрос по указанному URL, а результат сохраним в переменной C_RESULT.
Использование HTTPS в запросах
Иногда, HTTPS запросы могут не срабатывать, так как удаленная сторона будет проверять наш SSL – сертификат. Если поставить параметр ssl_verifypeer=0, то такой проверки не будет:
same => n,Set(CURLOPT(ssl_verifypeer)=0)
Как воспользоваться этим в диалплане?
Легко. С помощью функции GotoIf мы можем определить действие, которое отработает на базе результата cURL:
exten => _X.,1,Set(C_RESULT=${CURL(//merionet.ru/rest?num=84991234567)})
same => n,GotoIf($["${C_RESULT}" = "1"]?res1:res2)
same => n(res1),Verbose(CURL Result = 1)
same => n,Hangup
same => n(res2),Verbose(CURL Result != 1)
same => n,Hangup
Указанный код отправит GET - запрос на rest, в котором в параметре num передаст номер звонящего (можно указать соответствующую переменную диалплана Asterisk). В случае, если результатом выполнения запроса будет 1, то мы перейдем к выполнению шага res1, а противоположном случае, res2.
res_json для обработки JSON ответов
На самом деле, для API, является обычной практикой возврат ответа в виде JSON. Поэтому, нам следует преобразовать эти данные перед обработкой их. Для этого мы воспользуемся модулем res_json из JSON библиотеки, который создан для расширения базовых возможностей диалплана с точки зрения обработки JSON.
Почитайте материал об установке данного модуля по этой ссылке.
exten => _X.,1,Set(C_RESULT=${CURL(//merionet.ru/rest.json)})
same => n,Set(result=${JSONELEMENT(C_RESULT, result/somefield)})
same => n,GotoIf($["${result}" = "1"]?res1:res2)
same => n(res1),Verbose(CURL Result = 1)
same => n,Hangup
same => n(res2),Verbose(CURL Result != 1)
same => n,Hangup
Для теста, создайте у себя на web – сервере файл rest.json со следующим содержанием:
{
"result": {
"somefield": 1
}
}
Git – это довольно мощный инструмент, и, к тому же, он является самой популярной системой контроля версий. Это именно то, что позволяет разработчикам и техническим группам совместно работать над одними и теми же проектами.
Но что делать, если вы случайно зафиксировали файл, который не должны были? Например, вы нашли в нем ошибку.
Не нужно беспокоиться! Git позволит исправить вам свои ошибки и вернуться к более ранней версии вашего проекта.
У Git есть одна очень полезная функция – вы можете отменить изменения, которые внесли в проект.
В этой статье мы расскажем вам, как можно отменить изменения в Git в зависимости от состояния вашего Git-репозитория.
Как отменить локальные невнесенные изменения в Git?
Допустим, что вы работаете на своем локальном компьютере. Вы внесли в локальный файл некоторые изменения и сохранили их. Чуть позже вы решили, что хотите их отменить.
Если вы еще не успели внести изменения, то есть еще не применяли команду
git add
, то в таком случае вам поможет команда
git restore
.
Если более конкретно, то ваша команда
git restore
должна выглядеть примерно так:
git restore имя_файла
Итак, допустим, что у вас есть файл
README.md
, и вы случайно добавили в него какой-то текст и сохранили его там, но потом решили, что его нужно удалить.
Для начала вы можете запустить команду
git status
, чтобы просмотреть состояние вашего Git-репозитория.
Когда вы это сделаете, вы увидите, что файл не был помещен в архив, то есть команда
git add
еще не запускалась. После чего вы сможете просмотреть те файлы, которые, возможно, захотите удалить:
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git restore ..." to discard changes in working directory)
modified: README.md
no changes added to commit (use "git add" and/or "git commit -a")
Вот так выглядит команда для того, чтобы отменить изменения в файле
README.md
:
git restore README.md
Теперь вы можете еще раз запустить команду
git status
, чтобы снова проверить состояние вашего Git-репозитория:
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
Ура! Вы успешно отменили свои последние изменения и вернулись к последней зафиксированной версии вашего проекта.
Как отменить локальные внесенные изменения в Git?
Если вы все-таки запустили команду
git add
, то это значит, что вы внесли файл в свой архив.
Итак, допустим, вы внесли локально некоторые изменения в файл
README.md
, после чего вы запустили команду
git add
, которая внесла ваши изменения в архив. Однако через какое-то время вы вдруг поняли, что в тексте есть ошибки.
Для начала запустите команду
git status
, чтобы убедиться, что вы внесли файл в архив, то есть запустили команду
git add
:
On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
(use "git restore --staged ..." to unstage)
modified: README.md
Глядя на вывод команды
git status
, мы видим, что для того, чтобы отменить ваши изменения, нужно запустить следующую команду:
git restore --staged имя_файла
Эта команда удалит файл из архива, но при этом ваши изменения никуда не исчезнут.
А теперь давайте снова запустим
git status
:
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git restore ..." to discard changes in working directory)
modified: README.md
no changes added to commit (use "git add" and/or "git commit -a")
Ну и теперь, чтобы отменить внесенные изменения и восстановить содержимое файла до его исходного состояния, запустите вот эту команду:
git restore README.md
И давайте еще раз запустим
git status
:
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
И вот, изменения, которые вы внесли, исчезли, а файл вернулся к своей текущей зафиксированной версии.
Как отменить локальные зафиксированные изменения в Git?
Допустим, что вы внесли в файл некоторые изменения, разместили его с помощью команды
git add
и зафиксировали его с помощью другой команды
git commit
.
Это значит, что ваш коммит на данном этапе существует только локально и пока еще не был добавлен в удаленный репозиторий.
Для начала запустите команду
git status
, чтобы убедиться в том, что вы зафиксировали файл:
On branch main
Your branch is ahead of 'origin/main' by 1 commit.
(use "git push" to publish your local commits)
nothing to commit, working tree clean
После чего, если вы хотите отменить последний локальный коммит, то просто запустите команду
git log
.
Последний коммит будет выглядеть следующим образом: его хэш (длинная последовательность из цифр и символов) и
(HEAD -> main)
в конце. Это коммит, который вы хотите отменить.
Предпоследний коммит будет выглядеть так: его хэш и
(origin/main)
в конце. Это коммит, который вы хотите оставить и который вы отправили в удаленный репозиторий.
Далее для того, чтобы отменить коммит, запустите следующую команду:
git reset --soft HEAD~
А теперь, снова запустите
git log
.
Вы должны увидеть хэш коммита и
(HEAD -> main)
в конце.
Теперь ваш последний коммит не является частью истории репозитория, и он был удален.
Команда выше восстановила все до того состояния, которое было до того случайного или ошибочного коммита.
Давайте еще раз запустим
git status
:
On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
(use "git restore --staged ..." to unstage)
modified: README.md
Отметим, что несмотря на то, что команда
git reset --soft HEAD~
отменила ваш последний коммит, все изменения, которые были вами сделаны, сохранились.
Как отменить общедоступные зафиксированные изменения в Git?
Допустим, вы внесли в файл некоторые изменения, подготовили его с помощью команды
git add
, зафиксировали с помощью команды
git commit
и отправили в удаленный репозиторий с помощью команды
git push
. Однако через какое-то время вы поняли, что вам не нужно было фиксировать этот файл.
Что делать в такой ситуации?
Для начала запустите команду
git status
, чтобы проверить состояние Git-репозитория:
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
В предыдущем параграфе вы видели, что у каждого коммита есть хэш, который представляет собой длинную последовательность цифр и символов.
Для того, чтобы увидеть более короткую версию хэша, запустите следующую команду:
git log --oneline
Вы также можете проверить, какой коммит вам нужно удалить, запустив команду
git log
.
Допустим, что хэш вашего последнего коммита выглядит так:
cc3bbf7
, за ним следует
(HEAD -> main, origin/main)
и сообщение вида «commit README.md file».
Для того, чтобы отменить конкретно этот коммит, запустите команду:
git revert cc3bbf7 --no-edit
Она создаст новый коммит и вернет этот файл в его предыдущее состояние (как будто его никогда не меняли), и тем самым отменит изменения.
И наконец, для того, чтобы отправить изменение в удаленную ветку, вам нужно запустить команду
git push
.
После того, как вы выполните все эти действия, вы увидите, что сообщение в принципе останется таким же, но перед ним будет написано слово
revert
, например, «Revert commit README.md file».
Отметим также тот факт, что оба коммита будут отражены в истории, причем по отдельности:
Revert "commit README.md file"
@john-doe
john-doe committed 9 minutes ago
commit README.md file
@john-doe
john-doe committed 16 minutes ago
Заключение
И вот оно – теперь вы знаете, как можно отменить изменения в Git!
