{"id":3767127,"url":"https://alion.io/job/crosslinker-middlesenior-php-developer-symfony-2","title":"Middle+/Senior PHP Developer (Symfony)","company":{"id":3904650,"name":"Crosslinker","domain":"crosslinker.ru","url":"https://alion.io/company/crosslinker","size_band":"1-10","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"HeadHunter","truth_index":null},"role":"Backend","role_family":"Backend","seniority":"senior","employment_type":null,"work_mode":"remote","remote_scope":"stated_regions","remote_scope_basis":"board_field","remote_working_hours":null,"hiring_geo_confidence":"structured","locations":["Krasnogorsk, Russia"],"countries":["RU"],"hiring_countries":["RU","BY","KZ","KG","AM"],"hiring_countries_total":5,"salary":null,"salary_estimate":null,"experience_years_min":5,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Composer","optional":false},{"name":"PHP","optional":false},{"name":"Symfony","optional":false},{"name":"GitLab CI","optional":true},{"name":"PHPUnit","optional":true},{"name":"PostgreSQL","optional":true},{"name":"RabbitMQ","optional":true},{"name":"Redis","optional":true},{"name":"SQL","optional":true},{"name":"WebSockets","optional":true}],"status":"live","first_seen_at":"2026-11-04T20:18:57Z","employer_posted_date":"2026-11-04","last_verified_at":"2026-11-07T02:45:37Z","board_verified":true,"closed_at":null,"days_open":2,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":2},"description":"Мы компания Crosslinker, создаём прикладные и комплексные программные решения любой сложности для крупного бизнеса и финтеха.\n Мы запускаем техническую модернизацию ключевой платформы и в связи с этим ищем опытного PHP-разработчика (Middle+/Senior).\n Что за проект: высоконагруженная информационная система на PHP и Symfony, собранная из множества взаимосвязанных пакетов, часть из которых устарела.\n Что предстоит делать: полностью разобрать и инвентаризировать кодовую базу, перевести её на актуальные версии PHP (8) и Symfony, а также выстроить единые процессы сборки и управления зависимостями - чтобы система оставалась поддерживаемой вдолгую.\n Обязанности:\n Провести ревизию кодовой базы: реестр компонентов, карта связей, поиск дублей и неиспользуемого.\n\n Реализовать поэтапный апгрейд стека (PHP 7.4 → 8.x, Symfony до поддерживаемой версии), не мешая параллельной миграции участков.\n\n Мигрировать код автоматическими средствами (Rector) и вручную, разрабатывая собственные правила анализа.\n\n Обеспечить сборку модулей (Composer, semver, dev-ветки, path-репозитории) и её воспроизводимость в CI.\n\n Поддерживать команду миграции по вопросам версий модулей, участвовать в ревью и документировании.\n\n Требования:\n Коммерческий опыт разработки на PHP от 5 лет (не Fullstack);\n Отличное знание PHP и уверенный опыт работы с Symfony (5.x/6.x) в продакшене, включая глубокое понимание контейнера и механизмов внедрения зависимостей;\n Обязательный опыт подъема версий PHP (7.x на 8.x) или работы с с единым крупным репозиторием;\n Умение читать и понимать легаси-код (навык «чтения без IDE»), знание особенностей PHP 7.x и Zend Framework 1 будет большим плюсом;\n Глубокое понимание транзакций, конкурентного доступа (блокировки, мьютексы) и SQL (опыт работы с PostgreSQL, умение читать EXPLAIN);\n Навыки рефакторинга с обоснованием пользы для команды, осознанное применение SOLID и DRY.\n Будет плюсом:\n Опыт работы с PHPUnit, RabbitMQ, Memcache/Redis, WebSocket;\n Опыт ведения монорепозитория (знание split-репозиториев, правил зависимостей);\n Настройка CI для многопакетных проектов (GitLab CI);\n Понимание DDD, ограниченных контекстов, однонаправленных зависимостей;\n Знание домена электронных торгов и закупок.\n Условия:\n Возможность расти профессионально в аккредитованной IT-компании;\n\n Официальное оформление по ТК РФ и «белая» зарплата;\n\n Участие в масштабных и сложных проектах;\n\n Сильная продуктовая команда, которая слышит и поддерживает твои идеи;\n\n Современная техника;\n\n Гибкий график и возможность работать удалённо в пределах РФ;\n\n Живая корпоративная культура, амбициозные и дружные коллеги, творческая атмосфера, которая делает рабочие дни лёгкими и продуктивными.","description_format":"text","description_chars":2679,"description_truncated":false,"requirements":{"experience_years_min":5,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"Russian","level":"Advanced (C1)","optional":false}]},"benefits":[],"hiring_locations":[{"name":"Russia","iso":"RU","kind":"country"},{"name":"Belarus","iso":"BY","kind":"region"},{"name":"Kazakhstan","iso":"KZ","kind":"region"},{"name":"Kyrgyzstan","iso":"KG","kind":"region"},{"name":"Armenia","iso":"AM","kind":"region"}],"hiring_excludes":[],"relocation_offered":false,"industries":["IT Outsourcing & Dedicated Teams","Custom Software Development"],"lifecycle":[{"event":"open","at":"2026-11-04T20:23:29Z"}],"visa":[],"liveness":{"score":86,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.86,"p_room":1,"age_days":2,"expected_fill_days":30,"reasons":["conf:3","win:early"],"computed_at":"2026-11-07T05:47:08Z"},"pay":null,"html_url":"https://alion.io/job/crosslinker-middlesenior-php-developer-symfony-2","json_url":"https://alion.io/job/crosslinker-middlesenior-php-developer-symfony-2.json","meta":{"generated_at":"2026-11-07T11:44:07Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":12276,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-11-08T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":3904650},"rest":"https://alion.io/mcp/rest/get_company?id=3904650"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fcrosslinker-middlesenior-php-developer-symfony-2"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fcrosslinker-middlesenior-php-developer-symfony-2"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fcrosslinker-middlesenior-php-developer-symfony-2"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/crosslinker-middlesenior-php-developer-symfony-2\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fcrosslinker-middlesenior-php-developer-symfony-2"}],"agent":{"mcp":"https://alion.io/mcp/jobs","mcp_open":"https://alion.io/mcp/open","next":[{"tool":"get_job","arguments":{"id":3767127}},{"tool":"search_jobs","arguments":{"company":"crosslinker.ru","detail":"compact"}},{"tool":"match_people","arguments":{"job_id":3767127},"note":"people open to offers who fit this vacancy"}],"note":"The same data through MCP tools: https://alion.io/mcp/open needs no sign-in (compact searches, postings, people); https://alion.io/mcp with an Alion account has everything. Docs: https://alion.io/developers"}}