Discussion:
[Erp5-dev] Recruitment process, positions, position histories
Jacek Medrzycki
2007-05-09 11:59:32 UTC
Permalink
We are going to implement generic recrutiment system (as part of HR) and
we want to discuss one issue we have found.

There is a Position (in a company) which can be occupied or vacant (it
can also be closed when a company decides it's no longer useful, but
that's not important now).

The Position contains Position History objects (like Person contains
Career objects). There is a default_position_history (like
default_career) object which represents the current state of this
Position (the Person's Career object is linked to this
position_history). Other Position History objects are for historical
reasons.

Now - when a position is going to be vacant, the recruitment process
begins. However, the Position is not vacant at the moment of the
recruitment process, becouse the current employee is still working - he
would stop working in a few weeks or months. So we need a way to
indicate in the system the fact that the Position is occupied until -
say -31st of July and we are looking for a new employee which starts to
work since the 1 of august.

The idea is to create a new Position History object with magical id:
pending_position_history, which represents the future state of the
Position, like default_position_history represents the current state of
it. We can then conduct recruitment process for that Position, linking
Position Opportunities to the pending_position_history. When recuritment
process ends and a future employee is selected, his Career is linked to
that pending_position_history. We can than easily distinguish between
Person A, who is current employee for the Position and Person B who is
the future employe for the same Position and (as Postion History has -
among others - start and stop date) when one stops to work and the
second starts.

There should also exist a mechanism - similar to Career_shiftDefault -
which pushes current default_position_history to archive and renames
pending_position_history to default_position_history, so we can easily
switch it when a given date arrives.

Is our approach correct?

Regards
Jacek
bartek
2007-05-09 13:44:56 UTC
Permalink
Post by Jacek Medrzycki
We are going to implement generic recrutiment system (as part of HR) and
we want to discuss one issue we have found.
There is a Position (in a company) which can be occupied or vacant (it
can also be closed when a company decides it's no longer useful, but
that's not important now).
The Position contains Position History objects (like Person contains
Career objects). There is a default_position_history (like
default_career) object which represents the current state of this
Position (the Person's Career object is linked to this
position_history). Other Position History objects are for historical
reasons.
Now - when a position is going to be vacant, the recruitment process
begins. However, the Position is not vacant at the moment of the
recruitment process, becouse the current employee is still working - he
would stop working in a few weeks or months. So we need a way to
indicate in the system the fact that the Position is occupied until -
say -31st of July and we are looking for a new employee which starts to
work since the 1 of august.
pending_position_history, which represents the future state of the
Position, like default_position_history represents the current state of
it. We can then conduct recruitment process for that Position, linking
Position Opportunities to the pending_position_history. When recuritment
process ends and a future employee is selected, his Career is linked to
that pending_position_history. We can than easily distinguish between
Person A, who is current employee for the Position and Person B who is
the future employe for the same Position and (as Postion History has -
among others - start and stop date) when one stops to work and the
second starts.
There should also exist a mechanism - similar to Career_shiftDefault -
which pushes current default_position_history to archive and renames
pending_position_history to default_position_history, so we can easily
switch it when a given date arrives.
Plus, I'd combine it with transitions in position_workflow, so that a
position can be vacant, occupied or looking-for-replacement (I don't
know how to call it). And, for example, if you move position from
occupied to "looking-for-replacement", a pending_position_history is
automatically created and open, et ceatera.

B.
Post by Jacek Medrzycki
Is our approach correct?
Regards
Jacek
_______________________________________________
Erp5-dev mailing list
Erp5-dev at erp5.org
http://erp5.org/mailman/listinfo/erp5-dev
--
"feelings affect productivity. (...) unhappy people write worse
software, and less of it."
Karl Fogel, "Producing Open Source Software"
Loading...