some other points to consider:
can the Employment vertex stand by itself without having further edges to Employee and Company? or does employment vertex exist only in context of an employee and company ?
can the employment vertex be 'reused' between other employees and companies? (my guess, not) i.e., would you be able to share an Employment Vertex for one company and a group of employees? or would you need to create an employment vertex for every pair of employee-company.
in my opinion (for this and similar use cases only), it would not be feasible to share/ reuse employment vertices (e.g., to consider what to do when employee still works for same company but nature of employment changes e.g., on-probation to permanent maybe?)
i would also not suggest to have employment vertex for each pair of employee company - it means 3 extra documents (1 vertex and 2 edges to employee and company). you could perhaps optimize that by not using edges but unidirectional links from employee to employment and company to employment but that would be sub-optimal.
it also depends on the use cases that you want to support on employee-employment-company e.g., is the use case of "employees changing companies", part of the core business processes for your application? or is
so for this use case, my design choice would be regular edge with properties. if in future the number of properties on the edge get to a point that it starts affecting the performance then i'd create another document class to hold the extended properties, and a uni-directional link from edge to the extended properties.
cheers
~nagu.