fix: Added temporary mocks for vacancies.

This commit is contained in:
Назар Гольченко 2025-10-13 19:46:11 +03:00
parent bad3c8f6c6
commit c7021ee023

View File

@ -4,54 +4,171 @@ import (
"context"
pbVC "gitea.cybertalant.ru/VisionCareerMiniapp/DataManagemet/pb/golang"
"gitea.cybertalant.ru/VisionCareerMiniapp/MiniappGoService/internal/application/constants"
"google.golang.org/grpc"
"google.golang.org/grpc/credentials/insecure"
"google.golang.org/grpc/metadata"
)
type grpcClient struct {
apiKey string
conn *grpc.ClientConn
vсClient pbVC.VisionCareerApiServiceV1Client
// conn *grpc.ClientConn
// vсClient pbVC.VisionCareerApiServiceV1Client
}
func (t *grpcClient) Close() error {
return t.conn.Close()
// return t.conn.Close()
}
func (t *grpcClient) GetUserVacancies(ctx context.Context, in *pbVC.GetUserVacanciesRequest, opts ...grpc.CallOption) (*pbVC.GetUserVacanciesResponse, error) {
// Append api key to Meta-data
md := metadata.Pairs(constants.APIKey.String(), t.apiKey)
ctx = metadata.NewOutgoingContext(ctx, md)
// // Append api key to Meta-data
// md := metadata.Pairs(constants.APIKey.String(), t.apiKey)
// ctx = metadata.NewOutgoingContext(ctx, md)
return t.vсClient.GetUserVacancies(ctx, in, opts...)
// return t.vсClient.GetUserVacancies(ctx, in, opts...)
return &pbVC.GetUserVacanciesResponse{
Status: "success",
Items: []string{
"THIS IS MOCKS",
`
ЗП: до 500 000 рублей net
Penetration Tester Red Team, Wildberries & Russ 💜
Уровень: Middle/Senior
Формат: удаленка или гибрид
📭 Вместе с масштабным развитием IT направления Wildberries и Russ развивает информационную безопасность. Мы решаем сложные и разнообразные задачи: от повышения защищенности каждого сервиса до развития безопасности в рамках всей нашей инфраструктуры. Сейчас мы в поиске опытного Penetration Tester в Red Team. Команда занимается проведением аудитов безопасности инфраструктуры, продуктов и сервисов в различных форматах (тестирования на проникновение, анализ защищенности, кибер-учения).
📝 Ключевые задачи:
Проведение аудитов в формате тестирования на проникновение (внешняя и внутренняя инфраструктура, социалка)
Проведение аудитов в формате анализа защищенности (веб и мобильные приложения)
Проведение аудитов в формате Red/Purple Teaming
Поиск и эксплуатация уязвимостей веб и мобильных приложений
Поиск и эксплуатация уязвимостей и недостатков конфигурации ОС Linux а также специфичных для нее сервисов
Поиск и эксплуатация уязвимостей OC Windows и недостатков конфигурации Active Directory
Поиск и эксплуатация уязвимостей и недостатков конфигурации СУБД, систем виртуализации и контейнеризации
Оформление найденных уязвимостей для отчетов по итогам проектов
💫 Основные требования:
Опыт проведения проектов по анализу защищенности веб и мобильных приложений
Опыт проведения проектов по тестированию на проникновение (внешняя и внутренняя инфраструктура)
Опыт поиска и эксплуатации уязвимостей веб и мобильных приложений
Опыт поиска и эксплуатации уязвимостей ОС Linux
Опыт поиска и эксплуатации уязвимостей OC Windows и недостатков конфигурации AD
Опыт поиска и эксплуатации уязвимостей и недостатков конфигурации систем виртуализации и контейнеризации
Знание любого языка программирования на уровне достаточном для понимания/создания эксплойтов и автоматизации задач по поиску уязвимостей
Будет плюсом:
Образование (бакалавр, магистр) в одном из технических вузов РФ (МИФИ, МГТУ им. Баумана, МГУ)
Наличие профильных сертификатов (OSCP, OSWE, OSEP, CRTO)
Выступления на крупных конференциях и митапах, например PHDays, OffZone, Standoff и других
Участие в CTF и Bug Bounty
🔥 Что мы предлагаем:
Полная удаленка или гибрид с офисами в Москве и Санкт-Петербурге
IT-ипотека и оформление в аккредитованную IT-компанию
Бесплатное питание в офисах, ДМС со стоматологией (после испытательного срока)
Корпоративное обучение и IT-мероприятия
💘 Контакты: @alina_velbik
`,
`
Вакансии в информационную безопасность Точка Банк
Точка Банк IT-компания, мы создаём онлайн-банк и другие сервисы для бизнеса. Ими пользуются более 700 000 клиентов, а создают больше 5 000 сотрудников.
Администратор ИБ
📍От 180 000 до вычета налогов. Удалёнка, офис или гибрид как тебе удобнее.
Что делать:
Сопровождать и администрировать средства защиты информации: NGFW, 2FA, VPN, WAF, AV, СКЗИ, SIEM, DLP, antiDDoS.
Оперативно реагировать на задачи ИБ: согласовывать доступы и проверять соответствие ПО, сервисов и процессов требованиям.
Проводить регулярные контроли и аудиты системы информационной безопасности.
Ты подойдёшь, если:
Есть опыт работы администратором ИБ от 1 года.
Есть опыт администрирования основных средств защиты: DLP, SIEM, FW, AV, VPN.
Бизнес-партнёр по ИБ
📍От 300 000 до вычета налогов. Удалёнка, офис или гибрид как тебе удобнее.
Что делать:
Анализировать соответствие архитектуры IT-решений требованиям ИБ.
Выявлять и оценивать возможные риски.
Отслеживать выполнение мер при релизе продуктов.
Экспертно сопровождать проектные и бизнес-команды по вопросам ИБ.
Ты подойдёшь, если:
Есть опыт работы в банковской сфере от трёх лет на схожей позиции.
Знаешь требования законодательства и Банка России (716-П, 821-П, 683-П, 787-П) и умеешь применять их на практике.
Разбираешься в микросервисной и монолитной архитектуре, облаках и виртуализации.
`,
`
😎 Вакансия: Инженер по сетевой безопасности
Компания: Авито
График: можно удаленно
Локация: Москва, Нижний Новгород
Наша команда обеспечивает защиту и надежность всех продуктов Авито, технологической платформы и офисной инфраструктуры, а также занимается развитием собственного решения сетевой безопасности.
Мы ищем инженера по сетевой безопасности, имеющего опыт работы в проектах сетевой сегментации.
Вам предстоит:
Внедрение и развитие сегментации сетевой инфраструктуры (host based firewall, k8s);
Повышать защищенность офисной и корпоративной сети;
Аудит сетевых правил;
Консультация команд инфраструктуры по вопросам безопасности сети;
Планирование и реализация мер защиты инфраструктуры от сетевых атак.
Мы ждём, что вы:
Имеете опыт работы по направлению сетевой безопасности;
Имеете экспертные познания и опыт работы с современными Unix-like операционными системами;
Обладаете уверенными знаниями сетевых протоколов и принципов построения IP сетей;
Разбираетесь в сетевых атаках и способах защиты от них;
Готовы вести проекты самостоятельно.
Будет здорово, если вы:
- Работали с системами анализа данных;
- Знакомы с системами оркестрации контейнеров. Мы используем Kubernetes;
- Автоматизировали свою работу с помощью Bash\Python\Golang.
Работа у нас это:
возможность реализовать свои идеи в проекте с многомиллионной аудиторией;
талантливая команда, готовая поддержать ваши инициативы;
прозрачная система бонусов и премий, достойная зарплата размер обсудим на собеседовании;
обучение за счет компании: мы оплачиваем участие в российских и международных конференциях, профильные курсы и доступ к онлайн-библиотеке МИФ, покупаем нужную для роста и развития литературу;
комфортные условия работы: ДМС с первых дней работы, фитнес, компенсация питания;
красивый и комфортный офис в 2 минутах от метро «Белорусская», а также возможность работать удалённо.
Откликнуться: clc.to/xQjvew
`,
},
}, nil
}
func (t *grpcClient) UpsertUserData(ctx context.Context, in *pbVC.UpsertUserDataRequest, opts ...grpc.CallOption) (*pbVC.UpsertUserDataResponse, error) {
// Append api key to Meta-data
md := metadata.Pairs(constants.APIKey.String(), t.apiKey)
ctx = metadata.NewOutgoingContext(ctx, md)
// // Append api key to Meta-data
// md := metadata.Pairs(constants.APIKey.String(), t.apiKey)
// ctx = metadata.NewOutgoingContext(ctx, md)
return t.vсClient.UpsertUserData(ctx, in, opts...)
// return t.vсClient.UpsertUserData(ctx, in, opts...)
return &pbVC.UpsertUserDataResponse{
Status: "success",
}, nil
}
// Init : Инициализирует общий gRPC клиент
func Init(addr, apiKey string) (*grpcClient, error) {
// Открытие соединения
conn, err := grpc.Dial(
addr,
grpc.WithTransportCredentials(insecure.NewCredentials()),
grpc.WithBlock(),
)
// conn, err := grpc.Dial(
// addr,
// grpc.WithTransportCredentials(insecure.NewCredentials()),
// grpc.WithBlock(),
// )
if err != nil {
return nil, err
}
// if err != nil {
// return nil, err
// }
// Инициализация gRPC клиентов
return &grpcClient{
apiKey: apiKey,
conn: conn,
vсClient: pbVC.NewVisionCareerApiServiceV1Client(conn),
// conn: conn,
// vсClient: pbVC.NewVisionCareerApiServiceV1Client(conn),
}, nil
}