Люди могут загружать резюме, рекрутеры могут загружать их
Это можно сделать, предоставив страницу для загрузки тем, у кого есть права, затем предоставив страницу, которая находит файлы в вашем каталоге загрузки CSV и предоставляет ссылки наих.Возможно, вы захотите отправить свою форму загрузки как нечто большее, чем просто файл csv - вы введете строку в базу данных, в которой будет указано, где находится файл, что это такое, когда он был загружен и т. Д. Затем вы запроситеэти строки, чтобы определить, как извлечь файл, и в процессе вы значительно упростите поиск и упорядочение файлов.
Соискатели могут искать вакансии по категориям и местоположению (рекрутеры могут размещать вакансии)
Для этого вы можете настроить базовую базу данных, которая будет запрашиваться с использованием некоторой легко получаемой информации.Легко, как в ... Ваши пользователи, вероятно, ожидают от него отказаться, поэтому вы не потеряете трафик при его запросе.
Ваша модель может быть такой простой, как например:
Region Data / Geolocation
- IDs would be based on a geolocation API for consistency.
- CITY would correspond to that id.
- REGION_ABBR would be the state/province abbreviated, ususally
obtained from the geolocation API.
- REGION_FULL - This, if not provided by the API, is handy to have
ready for output on the frontend.
_______________________________________________________
|__id____city____country____region_abbr____region_full__|
| 4 | Butte | USA | ID | Idaho |
| 2 | Fresno| USA | CA | California |
| 9 | Atoka | USA | TA | Texas |
Job data
Based on the ID column from the region data, we can determine which
jobs are in a city by giving jobs a citys id. The rest is fairly
self explanatory - Add columns you will need to filter by. Expire times,
category (web, sales, carpentry, etc), whatever you and the friend of
the friend an determine will be a useful metric for narrowing results.
_____________________________________________________________
|__id____city_id____title______type_______expires______etc____|
| 1 | 7 | xyz | freelance | timestamp | whatever |
| 2 | 7 | yxz | contract | timestamp | you |
| 3 | 38 | zyx | fulltime | timestamp | require |
Интеграция с Facebook - мне нужно получить разъяснения по этому вопросу, но я думаю, это будет означать, что вы можете просто войти в систему, используя свою учетную запись Facebook
Если это станет необходимым, документация на Facebook довольно убедительная в этом отношении.1014 *
вербовщики должны платить, чтобы разместить работу
Это сложный вызов - у меня нет опыта продаж услуг через Интернет, поэтому я не могу дать какой-либо совет.
Технология для работы
Я бы лично создал ее, используя php-фреймворк, для быстрой, легкой, несколько масштабируемой разработки с минимальными усилиями, которую можно передать другим разработчикам. Symfony 1.4 (или 2 , если вы готовы столкнуться с небольшим отсутствием документации) - мой выбор, но есть множество отличных вариантов.Если вы поклонник питона, Django - отличный выбор.
Я бы хотел попробовать создать нечто подобное с помощью Rails.Руби мой новый фаворит.Это действительно зависит от того, что вы знаете лучше всего, и я чувствую, что PHP является самым простым для новичков.Если вы очень незнакомы со сценариями / программированием ... Возможно, было бы не очень хорошей идеей оседлать фреймворк.Это может быть более запутанным, чем полезным.В самом деле, просто делайте то, что вам удобно.
Что касается того, чтобы эта штука выглядела красиво, попробуйте twitter's bootstrap .Он поставляется с действительно простыми в использовании стилями для всего, от макета до форм и кнопок.Это довольно солидно.Более того, он может быть легко настроен и уже имеет МЕНЬШУЮ версию (и при этом хорошо построенную).LESS - большой актив для большого проекта!
Также возможно актуально;В загрузчике Twitter есть несколько компонентов javascript, которые вы можете вставить в проект (также легко настраиваемые), такие как модалы, вкладки, всплывающие подсказки, что у вас есть.Хорошо написанные вещи.Лично мне нравится это для создания прототипов, а не для производства готовых материалов, но было бы хорошо для производства, если бы вы сделали это в соответствии с планом дизайна вашего клиента.
В противном случае ... Сложно сказать.Проект, который вы обрисовали, довольно ясен, но когда дело доходит до него, ваш клиент сможет прояснить его намного дальше и дать вам хорошее представление о том, как двигаться дальше.