Skip to content

Commit

Permalink
replace the PHP position with PHP/WordPress
Browse files Browse the repository at this point in the history
  • Loading branch information
stebunovd committed Dec 15, 2024
1 parent 0cc71cc commit 3e238e3
Show file tree
Hide file tree
Showing 7 changed files with 126 additions and 4 deletions.
10 changes: 9 additions & 1 deletion src/Jobs.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,21 @@ const Jobs = {
url: '/python/',
active: true,
},
wordpress: {
name: 'WordPress',
title: 'PHP/WordPress разработчик',
subTitle: 'Full-stack',
description: 'Full-stack разработчик (PHP/WordPress + frontend)',
url: '/wordpress/',
active: true,
},
php: {
name: 'PHP',
title: 'PHP разработчик',
subTitle: 'Full-stack',
description: 'Full-stack разработчик (PHP + frontend)',
url: '/php/',
active: true,
active: false,
},
content: {
name: 'Content',
Expand Down
1 change: 1 addition & 0 deletions src/components/ExperienceRadioField.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import * as styles from './ExperienceRadioField.module.scss';
export const allExperienceTypes = {
linux: 'Linux',
php: 'PHP',
wordpress: 'WordPress',
python: 'Python',
django: 'Django',
db: 'Реляционные БД',
Expand Down
4 changes: 3 additions & 1 deletion src/pages/frontend/form.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@ export default function FrontendForm() {
>
<DeveloperForm
job={Jobs.frontend}
experienceTypes={omit(allExperienceTypes, ['php', 'python', 'django'])}
experienceTypes={
omit(allExperienceTypes, ['php', 'wordpress', 'python', 'django'])
}
/>
</Layout>
);
Expand Down
2 changes: 1 addition & 1 deletion src/pages/php/form.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export default function PHPForm() {
>
<DeveloperForm
job={Jobs.php}
experienceTypes={omit(allExperienceTypes, ['django'])}
experienceTypes={omit(allExperienceTypes, ['wordpress', 'django'])}
/>
</Layout>
);
Expand Down
2 changes: 1 addition & 1 deletion src/pages/python/form.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export default function PythonForm() {
>
<DeveloperForm
job={Jobs.python}
experienceTypes={omit(allExperienceTypes, ['php'])}
experienceTypes={omit(allExperienceTypes, ['php', 'wordpress'])}
/>
</Layout>
);
Expand Down
24 changes: 24 additions & 0 deletions src/pages/wordpress/form.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import omit from 'lodash/omit';
import React from 'react';

import Jobs from '@/Jobs';
import DeveloperForm, { allExperienceTypes } from '@/components/DeveloperForm';
import Layout from '@/components/layout/Layout';

const backLink = { url: '/', text: 'Все вакансии' };

export default function WordPressForm() {
return (
<Layout
pageTitle="Отклик на вакансию"
metaTitle={`Отклик на вакансию - ${Jobs.wordpress.title}`}
metaDescription={Jobs.wordpress.description}
backLink={backLink}
>
<DeveloperForm
job={Jobs.wordpress}
experienceTypes={omit(allExperienceTypes, ['django'])}
/>
</Layout>
);
}
87 changes: 87 additions & 0 deletions src/pages/wordpress/index.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
import React from 'react';

import Jobs from '@/Jobs';
import Benefits from '@/components/Benefits';
import InterviewProcess from '@/components/InterviewProcess';
import JobPage from '@/components/JobPage';
import JobTextBlock from '@/components/JobTextBlock';
import Layout from '@/components/layout/Layout';

const backLink = { url: '/', text: 'Все вакансии' };

export default function wordpressJob() {
return (
<Layout
pageTitle={Jobs.wordpress.title}
subTitle={Jobs.wordpress.subTitle}
metaDescription={Jobs.wordpress.description}
backLink={backLink}
>
<JobPage job={Jobs.wordpress}>
<JobTextBlock title="О проекте">
<p>
Мы ищем опытного PHP / full-stack разработчика в команду,
занимающуюся поддержкой и развитием сайтов крупного медиа-холдинга.
Суммарная посещаемость сайтов - более 70 млн. уникальных посетителей
в месяц; тематики - автомобили, обустройство дома, популярная наука,
фотография, и т.д.
</p>
<p>
Все эти сайты построены на WordPress, и нас часто спрашивают - не
планируем ли мы переписать их на что-то другое. Нет, не планируем 🙂
WordPress, как платформа, разумеется имеет свои известные
ограничения, но несмотря на это является стандартом де-факто среди
профессиональных медиа-издателей. Слияния и поглощения в этой
индустрии происходят регулярно, и по статистике 2/3 из новых сайтов
которыми пополняется портфолио холдинга оказываются построены на
WordPress, и попытки противостоять этому тренду просто
нецелесообразны.
</p>
<p>
Заметим, однако, что у нас не &quot;дикий&quot; WordPress, а очень
даже культурный - с CI-пайплайнами, код-стайлом, линтерами и
автоматизированными тестами. Мы проводим код-ревью и стараемся
следовать прочим инженерным best practices.
</p>
<p>
У нас есть и другие проекты на PHP, Python
и Node.js, в будущем может предстоять работа и с ними.
</p>
</JobTextBlock>
<JobTextBlock title="О вас">
<p>
Мы ожидаем, что у вас не меньше пяти лет опыта в веб-разработке,
включая практический опыт с WordPress, и вы готовы работать как над
бекендом, так и над фронтендом, инфраструктурная часть вам также
не чужда. Идеально, если помимо PHP, вы открыты к работе с Python
и Node.js в будущем.
</p>
<p>
Мы всячески приветствуем креатив, самостоятельность
и открытые обсуждения. Поэтому кроме технических скиллов,
ожидаем, что вы настроены на командную работу,
готовы исследовать разные варианты решения задачи, обсуждать
их с коллегами, проектировать, принимать решения
и воплощать их в жизнь.
</p>
<p>
У нас русскоязычная команда, но продукты, над которыми
мы работаем, имеют англоязычный интерфейс и рассчитаны
на интернациональную аудиторию. Также мы активно
общаемся с нашими партнерами из США. В связи
с этим русский знать обязательно;
а для английского &mdash; достаточно уровня Intermediate
и готовности его улучшать (у нас налажено корпоративное
обучение английскому).
</p>
</JobTextBlock>
<JobTextBlock title="Условия">
<Benefits />
</JobTextBlock>
<JobTextBlock title="Как проходит интервью">
<InterviewProcess jobIsActive={Jobs.wordpress.active} />
</JobTextBlock>
</JobPage>
</Layout>
);
}

0 comments on commit 3e238e3

Please sign in to comment.