228

The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests
Page 2: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

The VSHN HandbookVersion 1.13, 2020-07-16

Page 3: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Table of ContentsColophon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  1

1. The VSHN Handbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  2

Part 1: Life at VSHN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  4

2. Vision, Mission and Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.1. Why do we exist? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.2. What do we do?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

2.3. How do we behave? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  5

3. Organizational structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3.1. Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7

3.2. Sociocracy 3.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  8

4. How we make decisions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9

4.1. Organizational. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9

4.2. Daily business . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9

4.3. Consent Decision Making. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9

4.4. Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  11

5. Communication Principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14

6. Recruiting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  16

6.1. Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  16

6.2. First Contact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  16

6.3. Second Meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  17

6.4. Decision Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  18

7. Reverse Interview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  19

7.1. Tech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  19

7.2. The Team . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  20

7.3. The Company . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  22

7.4. The Business . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

7.5. Remote Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

7.6. Office Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  23

7.7. Compensation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

7.8. Time Off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  24

8. Documentation Finder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  25

8.1. Technical Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  25

8.2. VSHN Internal Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  25

9. Your First Day. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  26

9.1. The Office . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  26

9.2. Working Hours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  26

Page 4: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

9.3. Your Mentor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27

9.4. Your Introductory Blog Post . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27

9.5. Hardware and Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  27

10. Trial Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30

10.1. During the Trial Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  30

10.2. End of the Trial Period . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  31

11. Everyday Life . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  33

11.1. Weekly Team Meeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  33

11.2. OnCall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  33

11.3. Office Life . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  33

12. Salary System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  37

12.1. Salary System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  37

12.2. Salary Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  38

12.3. Deductions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  39

12.4. OnCall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  39

12.5. Bonuses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  39

12.6. Trainings and Education. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  39

12.7. Holidays and Extra Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  40

12.8. Stock Option Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  40

12.9. Other Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  40

13. Timesheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  41

13.1. Odoo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  41

13.2. Jira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  42

13.3. Some Time-Tracking Tips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  42

14. How to do Meetings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  45

14.1. What’s a meeting? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  45

14.2. General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  46

14.3. Attend a meeting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  46

14.4. Schedule and facilitate a meeting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  48

14.5. Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  50

15. Meeting Rooms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  52

15.1. For Meetings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  52

15.2. Other Rooms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  52

15.3. Internal rooms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  53

16. Company Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54

16.1. Does this mean you shouldn’t speak your native language? . . . . . . . . . .  54

16.2. Improving language skills . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  54

16.3. Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  55

17. Weekly Team Meeting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  56

Page 5: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

18. Squads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

18.1. Current Squads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  57

18.2. Rules for all Squads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  59

18.3. Assets of a Squad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  60

18.4. Squad Assignement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  61

18.5. Daily Stand-Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  61

19. Altair Squad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

19.1. Mission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

19.2. Rotation from Home-Squads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  62

19.3. Squad Culture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  63

19.4. Responsible Ops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  64

19.5. Monitoring Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  65

19.6. Ticket Triage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  66

19.7. How we work with tickets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  69

20. Rotating in and out of Altair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  71

20.1. Your first day in Altair. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  71

20.2. Handover when leaving Altair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  72

21. Chapters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  73

21.1. Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  73

21.2. Responsibilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  74

21.3. How to Create a Chapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  74

21.4. How to Abandon a Chapter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  75

22. Working at the office. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

22.1. Security Information. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

22.2. Different offices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

22.3. Dedicated desks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  76

22.4. Desk sharing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  77

22.5. Including remote VSHNeers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  77

22.6. Meetings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  78

23. Working remotely. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

23.1. Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

23.2. Socializing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  79

23.3. Tips and Tricks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  80

23.4. Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  81

23.5. Fun. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  81

24. Communication Channels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  82

24.1. Written Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  82

24.2. In-Person Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  90

25. HeroOps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  95

Page 6: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

25.1. Goals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  95

25.2. Mechanics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  95

25.3. Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  96

26. Holidays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  97

26.1. In General. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  97

26.2. On the last day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  97

26.3. Checking your Holidays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  98

27. Personal Education Process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  100

28. Conflict Resolution Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  101

28.1. 1. Talk with the Other Person . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  101

28.2. 2. Discuss with Squad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  101

28.3. 3. Talk to HR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  101

28.4. 4. Talk to Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  102

29. Leave Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  103

29.1. Leave Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  103

29.2. Public Holidays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  103

29.3. Military Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  103

29.4. Special Occasions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  104

29.5. Unpaid Leave Requests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  104

29.6. Sick Leave and Medical Consultation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  104

29.7. How to Record Leave Requests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  104

29.8. How to Record Sick Leaves and Medical Consultations . . . . . . . . . . . . .  105

29.9. How to Record Unpaid Leave Requests . . . . . . . . . . . . . . . . . . . . . . . . . . .  106

30. How to Answer Phone Calls. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  108

30.1. Greeting. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  108

30.2. Tips for the conversation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  108

30.3. End of conversation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  110

Part 2: VSHNeer Roles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  111

31. VSHNeer Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  112

31.1. Role assignement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  112

31.2. Lifetime of a role. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  112

31.3. Scope of a role . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  113

31.4. Communication and co-operation between roles . . . . . . . . . . . . . . . . . .  113

32. Chief Information Security Officer (CISO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  115

33. Customer Success Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  117

34. PeopleOps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  119

35. Management Member . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  123

36. Mentor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  124

37. Product Owner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  126

Page 7: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

38. Project Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  128

39. Service Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  130

40. Squad Master . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  132

41. Technical Service Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  134

Part 3: Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  136

42. Documentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  137

42.1. Tools We Use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  137

42.2. Handbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  137

42.3. Confluence Wiki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  138

42.4. Git & GitLab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  141

42.5. Jira. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  141

43. Jira . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  142

43.1. Useful Jira Chores for Booking Your Time . . . . . . . . . . . . . . . . . . . . . . . . .  142

43.2. Project and Taskplanning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  143

43.3. Jira Workflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  145

43.4. Project and Operations Reporting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  149

43.5. Labels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  150

44. Work Logs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  152

44.1. Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  152

44.2. Work Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  152

44.3. Keywords. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  153

45. Mail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  155

45.1. Webmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  155

45.2. Using a Mail Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  155

45.3. Mail Signature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  156

45.4. Default Mail Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  157

45.5. Out Of Office . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  157

45.6. Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  158

46. Git Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  160

46.1. Commit messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  160

46.2. Git Usage Basics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  161

46.3. Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  163

47. GitLab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  164

47.1. Merge Requests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  164

47.2. CI/CD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  164

47.3. Pet Projects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  164

48. Working with GnuPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  166

48.1. Create Key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  166

48.2. Send to Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  166

Page 8: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

48.3. Import Keys from Other Users. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  166

48.4. Exporting Keys for Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  167

48.5. Using your Key . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  167

48.6. More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  167

49. GnuPG and Evolution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  168

49.1. Setup GnuPG in Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  168

49.2. Importing and Trusting Keys from Other Users . . . . . . . . . . . . . . . . . . . .  169

49.3. More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  169

50. GnuPG and GitLab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  170

51. Calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  171

51.1. Shared Calendars in SOGo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  171

51.2. Access your Calendars from Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . .  172

51.3. Share your Personal Calendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  174

52. Nextcloud. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  176

53. Merge Request Template. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  177

54. Chat Channels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  179

54.1. Specification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  180

55. Zoom Phone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  182

55.1. Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  182

55.2. How to use . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  182

55.3. Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  187

55.4. Call Queue Handling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  188

55.5. Rotation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  190

55.6. Tips and Tricks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  191

56. Videoconferencing Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  192

56.1. Etiquette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  192

56.2. Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  193

56.3. Sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  193

Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  195

Appendix A: Information about SARS-CoV-2 / COVID-19. . . . . . . . . . . . . . . . . . . .  198

A.1. Modus Operandi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  198

A.2. Why . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  198

A.3. External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  199

Appendix B: Quick Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  200

B.1. General. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  200

B.2. Technical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  200

B.3. Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  201

B.4. Misc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  201

Appendix C: VSHN Employee Handbook README . . . . . . . . . . . . . . . . . . . . . . . . .  202

Page 9: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

C.1. Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  202

C.2. Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  202

C.3. Build Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  202

Appendix D: Contributing to the Handbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  204

D.1. Language and Vocabulary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  204

D.2. Documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  205

D.3. Branching Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  205

D.4. Workflow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  206

D.5. Tickets & Time Tracking. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  206

D.6. Useful Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  206

D.7. Merge Request Approval Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  207

D.8. Release Process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  207

D.9. Tips for Visual Studio Code Users. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  207

D.10. Other Recommended Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  208

D.11. Recommended Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  208

Appendix E: CHANGELOG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  209

Appendix F: License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  216

Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  217

Page 10: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Colophon

Copyright © 2014-2020 VSHN AG–All Rights Reserved.

Published in Switzerland on 2020-07-16 14:59:51 UTC.

Created with Antora and Asciidoctor.

1

Page 11: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 1. The VSHN Handbook

Welcome to VSHN! We’re very happy to have you here with us.

This document is the VSHN Handbook; it contains all you need to know to startcollaborating with your teams and to understand the day-to-day intricacies of whatwe do.

At VSHN we do things a bit differently, but there is one core feature we expectfrom everyone here: collaborate in writing. Having things in writing helps us towork better, answering questions before they’re asked.

Contributing to the handbook

Of course, not all questions have been asked yet! This is why thisHandbook is open for collaboration. Just go to the project homepage in GitLab and follow the instructions there. Spoiler: youonly need a text editor and a Git client installed to help.

This Handbook contains a lot of information, but definitely not all of it. There is awhole Wiki available, whose contents are continuously updated–by everyone,including you!

About the Wiki

You should take a look at the wiki and if you find a mistake or anerror or a typo, select the "Edit" button (or just hit the E key) andcorrect it. We use Confluence as wiki software. Don’t worry ofmaking mistakes, Confluence stores the history of every change,and you can always roll back a previous version of any page ifneeded.

And as the saying goes: "Question, don’t assume!" We’re here to help.

2

Page 12: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Where To Start?

If you are reading this online on a laptop or desktop computer, use the menu onthe left side of the screen. On mobile devices, hit the hamburger icon to reveal themenu. And if you are reading this in PDF or EPUB formats, just move to the nextpage.

Although we think that the best place to start is with our CommunicationPrinciples, at the basis of all of our interactions with one another.

Download the Handbook

This handbook is also available in PDF, EPUB 3, and Kindle formats–and even as aman page! Download the version you prefer most and read it any way you like.

Install the man Page

You can install the man page in your system using these commands:

$ sudo cp handbook.1 /usr/local/share/man/man1$ sudo mandb

After these operations, the command man handbook will display the handbook in yourterminal.

3

Page 13: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Part 1: Life at VSHN

Welcome to the world of VSHN! This first part of the Handbook will provide thebasic information you need to get started with us.

4

Page 14: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 2. Vision, Mission and ValuesThis page gives an overview about the values that drive our work. Everything we doand think as a team is powered by these ideals.

2.1. Why do we exist?

VSHN empowers all software developers and online businesses to be moreefficient and successful, through collaborative operations engineering.

2.2. What do we do?

We automate software build, deploy, provisioning, backup, observability, alertingand incident management for production applications on any cloud with 24/7support.

2.3. How do we behave?

Core values

These core values are at the heart of VSHN, they won’t changeover time and are essential to our identity.

• Blamelessness and accountability.

• Sharing, open source.

• Collaboration over company borders, to create win-win situations forcustomers and partners.

Aspirational values

These are ideals we should aspire to have and actively trying toadopt.

• Proactively figure out & fix the root causes of problems.

• We care; if we do it, we do it properly, and assume responsibility andownership for it, even though "done" is better than "perfect."

5

Page 15: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Sustainability: we want to be successful in the long term; everything we makewill have to be usable around-the-clock for many years.

• No politics in hiring and compensation: salary system and diversity.

Permission to play values

These are minimum behavioural standards that we expecteverybody to adhere to but aren’t differentiators.

• Include VSHNeers in decision making: voice opinions and tensions actively;discuss and challenge objectively; adhere to a decision even in case ofdisagreement.

• Innovation: don’t accept a bad status quo. Change things.

• Be proud of accomplishments.

Accidental values

These are evident in our organization but are unintentional.

• Nerdiness.

6

Page 16: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 3. Organizational structureVSHN is organized in a flat hierarchy with only two levels of management, theBoard and the Management. We prefer to use principles, concepts and patternsfrom Sociocracy 3.0 instead of reinventing the wheel whenever we’ve to addressan organizational need.

3.1. Management

The management consists of people having the Management role. Themanagement is responsible to run the organization and serves as an escalationpoint when sociocratic and agile methods fail.

Responsibilities and Accountability

• Driver of organizational development.

◦ Define the company structure.

◦ Empower roles.

• Help the company to take decisions by staying on task until a decision is made.

• Ensure satisfaction of VSHNeers.

• Break down company vision and strategy set by Board into tangible goals forSquads and VSHNeers.

• Collaborate with VSHNeers to work out detailed actions to reach the goals.

• Propose company budget to the Board, enforce adherence to the budget andmake it visible.

Decisions

• Investments that exceed a certain amount or weren’t planned in advance.

• Final decision to hire or fire a VSHNeer.

• Projects which have a significant impact to the company or are a high risk.

Duties

• Periodic creation of reports.

7

Page 17: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Request the Board for power of attorney.

• Contact with the management of other companies.

• Final authority of the ISMS and final decisions about information security.

Point of Escalation

• Problems with VSHNeers (HR topics) which can’t be solved by other roles.

• Problems with customers which can’t be solved by other roles.

• Mediator / moderator for long, sensitive, or far reaching discussions.

3.2. Sociocracy 3.0

Sociocracy 3.0 a.k.a. "S3" is social technology for evolving agile and resilientorganizations at any size, from small start-ups to large international networksand multi-agency collaboration.

Using S3 can help us to achieve our objectives and successfully navigatecomplexity. We can make organizational changes one step at a time, without theneed for sudden radical reorganization or planning a long-term change initiative:

• We identify our areas of greatest need and select one or more practices orguidelines that help.

• We proceed at our own pace, and develop both our skills and a moresociocratic and agile mindset as we go.

Regardless of your position in the organization, you’ll find many proven ideas thatare relevant and helpful for you.

Source: sociocracy30.org/the-details/

Concepts or Patterns used

• Key concept of Objections, see Objections in How we make decisions

• Consent Decision Making, see How we make decisions

8

Page 18: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 4. How we make decisionsAs explained in Organizational Structure VSHN is organized in a flat hierarchyaround a role-, squad- and chapter-model.

We use Consent Decision Making from Sociocracy 3.0 to make decisions notably onguidelines, processes, protocols or policies and squad or role assignments.

4.1. Organizational

Everyone who’s affected by a decision should be involved in the decision making.This could mean all members of a squad or chapter, everyone holding the samerole, a list of affected people or all VSHNeers.

We want to live a culture where people feel comfortable to raisepotential objections at any time. Everyone has the possibility tovoice Objections against proposals, decisions, existingagreements, processes or activities. This includes decisionsalready made and decisions made by Management.

4.2. Daily business

We don’t have to use Consent Decision Making to decide in our daily work, forexample when making technical decisions or in Customer Service-, Project- orProduct- Management this could be inefficient. It can make sense though when itaffects other VSHNeers or imposes potential risk to the company strategy,technical roadmap or the organization itself.

4.3. Consent Decision Making

The process

Proposals become Agreements when they’re considered good enough for now andsafe enough to try until the next review.

Unresolved Objections prevent proposals from becoming agreements.

9

Page 19: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Step  Goal Verbal example Written example

1. Present the need andimpact

Know what and why weneed to act

This is a problem for me,I think we should changethis, otherwise we can’tdo that

Jira issue or discussionforum topic explainingthe need and imapct

2. Consent on the needand impact

Make sure we’ve thesame understanding

Do you understand theproblem and agree thatsomething needs to bechanged?

Jira issue comments orforum commentsquestioning the need orimpact

3. Create and present aProposal

Make your potentialsolution visible

I think the problem couldbe solved by doing thisand this

Written proposal on aWiki page or as ahandbook mergerequest, announced tothe group of affectedpeople

4. Collect and answer(clarify) questions

Everyone understandsthe proposed solution

Do you understand how Ipropose to solve theproblem?

Start a written FAQ andrequest feedback andquestions (wiki page orhandbook mergerequest)

5. Get a brief response(reactions)

Before going intohandling Objectionsknow the level ofpotential acceptance

Would you be okay withthis?Usually combined withprevious step.

Check acceptance froma subset of the group ofaffected people, forexample via chat

6. Collect Objections Collect objectionsagainst proposal

Do you have anyobjections?Give time to think oreven shift the processto a written form at thispoint

Announce Proposalagain and give a timewindow to raiseobjections as mergerequest comments orcomments on the wikipage.

7. Resolve Objections No objections left toreach consent

Discuss and changeproposed solution

Discuss, requestamendments andchange proposal untilno objections are left

8. DocumentAgreement andcelebrate!

Decision documentedand announced to thegroup of affectedpeople

Document the decisionand how it was made,crucial in verbaldecision making

Merge and releasehandbook changes,remove "Work-in-progress" markingsfrom wiki pages

During the whole process the need and impact should be visibleby making it part of the written proposal (description of themerge request or a Why/Goal section on the wiki page)

10

Page 20: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Resolve Objections

Those accountable for an activity or (proposed) agreement in question, areresponsible for considering arguments and addressing Objections that are raised.

Resolve objections one at a time by using the information they contain to makeand evolve amendments to the proposal. Choose an option for resolving anobjection that looks most promising, and if that fails, simply pick another one:

Individually:

• Discuss with the VSHNeer that raised the objection to amend the proposal

• Check with the proposal owner (creator) to amend the proposal

• Request help within the chapter, the squad or VSHN wide: Who can (help to)resolve this?

In groups:

• One or more discussion rounds on How would you solve this objection?

◦ It helps to try the Rounds method to maintain equivalence and supporteffective dialogue.

◦ Timebox the meeting

◦ Forum discussion "How can we resolve this objection?"

There is also the option to defer a proposal:

• Create a new proposal

◦ Form a group to research and write it

◦ Same VSHNeer or group creates an alternative proposal

• Restart decision making on the the new proposal

• Drop the proposal when you can’t resolve all Objections

4.4. Patterns

To understand our decision making process it helps to understand some basics thatwe borrow from Sociocracy 3.0. You neither have to read the whole Sociocracy 3.0guide nor have to be an expert in its concepts and principles.

11

Page 21: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Proposal

A proposed (change of a) guideline, process, protocol or policy to guide the flow ofvalue, in a written documented form.

Proposals usually start as a merge request, for example for the VSHN Handbook.

Agreement

When a Proposal has no unresolved Objections, all concerns were taken intoaccount and all questions were answered, the Proposal becomes an Agreement.

Agreements exist in written form only, for example in the VSHN Handbook.

Objections

An objection is an argument demonstrating (or revealing) how a (proposed)agreement or activity can lead to unintended consequences, or that there areworthwhile ways to improve it. Withholding objections can harm the ability ofindividuals, teams or the whole organization to achieve their objectives.

Things to consider when seeking out potential objections:

• Why the intended outcome would not be (fully) achieved: effectiveness

• Why it would be wasteful to proceed as proposed (or previously agreed):efficiency

• The negative consequences something would have: side-effects

Test arguments to qualify as Objections

When someone raises an argument for changing a Proposal, check that theargument reveals how leaving things unchanged will or could lead to consequencesyou want to avoid, or that it informs you of a worthwhile way to improve how to goabout achieving your objectives.

Helpful questions:

• How does the argument relate to this specific proposal or agreement?

• Does the argument reveal how a (proposed or current) activity or agreement:

◦ harms response to any organizational driver?

12

Page 22: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

◦ can be improved right now?

◦ prevents or diminishes someone’s contribution towards responding to adriver?

◦ is in conflict with the organization’s values?

◦ is considered not ‘safe enough’ to try?

Read more here.

Concern

Not all arguments raised are Objections. Distinguish between objections, whichalways reveal useful information, and other arguments that are based only onassumptions, or a personal preference or opinion.

If in doubt about whether you have an objection or a concern, be proactive andcheck with others to see what they think too.

13

Page 23: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 5. Communication PrinciplesThe following principles are at the core of how we work and communicate with oneanother.

I am responsible

I take responsibility for the task at hand.

I am okay. You are okay

I know my counterpart.

I make sure there are no misunderstandings

I understand the request and formulate my concerns clearly.

I think inside and outside of the box

I challenge the request and point out alternative solutions.

I treat my counterpart the way I want to be treated

I keep people updated and answer promptly to their concerns.

I work transparently, comprehensibly and team-oriented

I document all steps that have been taken and are necessary for further work.

I choose an adequate communication channel

I look for personal communication if it becomes technical or emotionallydifficult, or when the task at hand is unclear.

Talking is silver, listening is gold

Sometimes it’s better not to communicate.

On Your Desk

Each VSHNeer has these principles on their desk:

14

Page 24: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

15

Page 25: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 6. RecruitingLife at VSHN begins when you send in your application to work with us. Thischapter will provide some insight into our hiring process, what you should expectfrom us, and what we expect from you.

We don’t consider applications from recruiters!

6.1. Application

It all begins when you fill the application form in our website.

You can provide a URL to your CV, website or online portfolio tohelp us get to know you better.

After you send your application, lots of things happen internally:

• You should receive an acknowledgement of your application within 24 workinghours.

• We constantly filter out real applications from SPAM and recruiters.

• We check your CV or portfolio, and we match it to the position you areapplying to (if any).

• Someone from the team will contact you for a first in-person conversation inour office in Zurich (preferred, or in a videocall).

6.2. First Contact

The person who will contact you will be interested in getting to know you better,through questions like these:

• Do you live in Switzerland?

◦ If not, would you be interested to relocate?

• What position are you interested in? Why?

• What are your core skills?

• What are your passions?

16

Page 26: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• What are your dreams?

• Do you see yourself as a part of any of our current squads?

• Et cetera…

The objective of this first contact is to know if you are a trueVSHNary; that’s a person that shares the VSHN values, culture,and mission.

Answering Your Questions

You might have many questions too; please check the Reverse Interview page toget answers to the most common questions our candidates have asked us lately.

6.3. Second Meeting

If we’ve had a positive impression from you in the first contact, we will invite you toa second meeting in our offices. We will request for you to come around 10:00 AM,and after serving you a nice cup of coffee from our Italian espresso machine, youwill get to meet and talk to many members of our squads in a series of two 30minute long conversations.

At noon we will all have lunch together (we offer it, of course!), and you will havethe possibility to mingle with other VSHNeers and learn more about us and ourculture.

Be yourself! We don’t expect anything else from you.

If you are a candidate for a technical position, in the afternoon we will give you asmall exercise to do. This task depends on the squad that fits most likely your skills,and it can be something like containerizing an application in Docker, deploying asimple application in OpenShift, setting up a simple CI/CD pipeline, or someDevOps-related task.

At the end of this second meeting, you will meet one of the founders of thecompany, who will explain you in detail the salary structure, benefits, conditions,and other details, and who will gladly provide an answer to any questions youmight have.

17

Page 27: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

6.4. Decision Process

With all the information gathered in the two meetings, we will discuss internally asa team, usually in the weekly team meeting and decide whether we see you as aVSHNeer.

If the feedback from our team is positive, the Management makes the finaldecision and we then send you an offer with all the required information! And inthat case, we will be impatient to greet you on your first day with us!

18

Page 28: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 7. Reverse InterviewThis page, inspired by the Reverse interview project, provides some answers to themost common questions candidates make during interviews.

7.1. Tech

What are the usual stacks used at the company?

Each squad uses different technology stacks. For example, the Polaris squaduses Puppet for configuration management and Ansible for changemanagement like updates, while Sirius specializes in Ansible and Kubernetes inthe OpenShift and Rancher distributions. Capella sets up CI/CD pipelines, usingmost common systems: GitLab CI, Travis CI, and others. Many team memberswrote and maintain tools written in several programming languages: Python,Go, Bash shell script, and TypeScript are some examples.

How do you use source control?

Very extensively: we use our own GitLab for our internal projects, where weeven store the source Asciidoc files of this handbook. We also have a GitHubaccount where we share code and tools with the world. We encourage ourengineers to open source projects!

How do you test code?

We use unit testing as thoroughly as possible, wherever and whenever we can.But we can always do better.

How do you track bugs?

We use Atlassian Jira, and we use it to track everything, including recruiting,accounting, and of course customer support. There is a special page about Jirain this handbook with more information.

How do you integrate and deploy changes? Is it CI/CD?

Yes. We build, test, and integrate continuously everything we do, exactly thesame way we help our customers to do it! We’ve CI/CD pipelines for thishandbook, and even for our presentation slides.

Is your infrastructure setup under version control / available as code?

Yes.

19

Page 29: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

What’s the workflow from the planning to the finished task?

We use Scrum and Kanban internally. Each squad plans their work separatelyand following their own processes, but always in an agile and collaborative way.We use Jira extensively to document and keep a trace of everything we do, sothat we can work as asynchronously as possible.

Is there a standardised development environment? Is it enforced?

No. Every VSHNeer is free to use the tools that work best for them, althoughsome tools become natural "standards" because everyone uses them.

How quickly can you setup a new local test environment? (minutes / hours / days)

Each of our tools and projects should come with a README and an appropriatesetup configuration (for example, Makefile, build.sbt, setup.py, docker-compose.yml)to help you set them up. Usually, there is also additional documentation in thewiki. So, something like git clone && make typically gets you started withinminutes.

How quickly can you respond to security issues in the code or dependencies?

We’ve a 24/7 OnCall team, ready to respond day and night within 30 minutes,and we’re very proactive.

7.2. The Team

What does VSHNary means?

If you get in touch with VSHN you will hear the Word «VSHNary» sooner orlater. But what does this mashup of our company name and visionary mean?VSHNary is our term to describe a person that fits in our team. It doesn’t meanthat you have to be identical to who we’re. It means: To share the same culturalqualities and values, the same fascination for what we’re doing, the samethinking about what’s a team is what makes you VSHNary. To be VSHNary isn’tdescribed in a job description, so you have to come over to feel what it means.

How much independent action vs working off a provided list is expected?

If you want things to change, you are expected to independently act! Whichdoesn’t mean that you can "just do stuff" without talking to your peers. We’relooking for people which are team players, so a little bit of both attitudes arenecessary. We’re looking for people which are open minded and ready toimprove things. But also to have the team spirit to work on routine thingswhich just need to be done.

20

Page 30: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

What are the expected core work hours?

We use a 42.5 hours work week, including maintenance shifts. We’re alsolooking for engineers for our OnCall rotation, which counts as additional timeand is payed in addition to the salary.

What does the onboarding look like?

We’ve documented this in Your first day at VSHN.

How’s the work organised?

We’re organised in "Squads" and "Chapters." There is a page in this handbookfor each of them: Squads and Chapters.

How does the intra/inter-team communication typically work?

We use chat extensively, whereas e-mail is mostly a tool to talk to the "outerworld." We also use Zoom to communicate with remote team members, and torecord our internal training sessions. You can read more about those tools inthe following pages of this handbook: Calendar, Documentation, Jira, and Mail.

How are differences of opinions resolved?

It’s okay to have different opinions, and it’s also okay to have differences aboutthem. At the the end there are three ways of solving them:

• It’s important to use common sense, and it’s okay to just let differences ofopinions be.

• Include a bigger amount of team members into the discussion, maybe athird, fourth or even eleventh opinion will show up, but in the end thecrowd will decide.

• Money is a hard fact. There are things we’re just not able to pay, sosometimes we’ve to find another solution or a different compromise.

Who sets the priorities / schedule?

The squads in consultation with the Project Manager and the Sales teams.

What kind of meetings happen every week?

We talk about that in the "Your First Day", "Weekly Team Meeting", and"Squads" pages of this handbook.

21

Page 31: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

What happens after production incidents? Is there a culture of blameless analysis?

We win as a team and we f*ck up as a team. To handle incidents is a veryimportant topic at our company, and we work hard on avoiding them. If there isan incident we work as a team in fixing it, and don’t let anyone by themselves.After fixing we will discuss in the team what happened, and how to avoid suchsituations in the future by writing a blame-less postmortem.

What are some ongoing challenges the team is experiencing that you are yet toresolve?

We’re humans, and hence we sometimes struggle in our communication. Butwe’ve strong communication principes we stick to, and we’re constantly tryingand evaluating new ways to collaborate and communicate with one another.Some work better than others, but we’re always trying to get better at this.

7.3. The Company

What’s the status of / view on diverse hiring?

We’ve a lot of work to do to reach gender parity, and we’re doing it. We giveequal opportunities to all candidates, wherever they come from, whatever theirbackground is, and however they see themselves. As long as you adhere to theVSHNeer communication principles, you will be welcome!

Is there a budget for education?

Of course! There is an annual budget of 4000 CHF per employee, which can beused for personal education in nearly any way. Certification, language school,conferences, it’s up to you to decide. You can find more information in the"Salary System" and the "Personal Education Process" pages of this handbook.

Can I contribute to FOSS projects? Are there any approvals needed?

Yes you should contribute to FOSS projects, No you don’t need special approvalfor that.

What do you think are the gaps in the company culture?

We’re all human and that means we all make mistakes. The best we can do is tolearn from these gaps, and most importantly, to never blame somebody elsefor our own mistakes.

Do you collaborate with social or community projects?

At the moment we’re cooperating with Women++ and the ETHZ, but we’realways looking for new opportunities to improve the state of our community

22

Page 32: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

and our industry.

7.4. The Business

Are you profitable?

Yes.

What’s the maturity stage?

Growing.

Where does the funding come from, and who influences the high level plan/direction?

We don’t have investors; we’re solely owner-based. We grow organically.

How do you don’t make money?

We don’t provide bodyleasing and no «traditional» consulting.

What have you identified as your competitive advantage?

Our team.

7.5. Remote Work

What’s the ratio of remote to office workers?

At the moment there are two part time remote workers that work a few weeksat the time from remote. Homeoffice or remote work isn’t a problem, if youshow up here at the VSHN office regurarly, for example 33% of your workinghours.

Does the company provide hardware and what’s the refresh schedule?

This is explained in detail in the "Your First Day" page in this handbook.

7.6. Office Work

What’s the office layout?

We currently have one large room (12 people) and 5 smaller rooms (with 3–5people each). Come visit us for a cup of coffee and to have a look.

23

Page 33: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

7.7. Compensation

If you have a bonus scheme, how are bonuses determined?

We believe that you should be payed equally for equal work. We also believethat every VSHNeer works the best they can, so there are no bonus schemes.Salary increases apply to the whole team, and not to a single person. The SalarySystem page contains more information about this.

7.8. Time Off

How much Paid Time Off (PTO) is offered?

We talk about that in detail in the Salary System page of this handbook.

What’s the parental leave policy?

Women get the 14-week maternity leave specified by law, while men get 4-weeks of paternity leave. There are more benefits explained in the SalarySystem page.

24

Page 34: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 8. Documentation FinderThere are different places to find documentation, besides the Handbook you’recurrently reading. This page helps you to figure out where to find moredocumentation and where the sources are–contributions are always welcome.

8.1. Technical Documentation

• Knowledge Base: kb.vshn.ch (Source: GitHub)

• APPUiO: docs.appuio.ch (Source: GitHub)

• Project Syn: docs.syn.tools (Source: GitHub)

• K8up: k8up.io (Source: GitHub)

• OpenShift at VSHN: openshift.docs.vshn.ch (Source: VSHN GitLab)

8.2. VSHN Internal Documentation

• Technical Stuff: Confluence - VSHN Technical

• Business Stuff: Confluence - VSHN Business

• Customer Overview: VSHN Portal - Customers

• Information Security Management System: Confluence - ISMS

25

Page 35: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 9. Your First DayWelcome to VSHN! You are a new VSHNeer now. This section of the Handbook willgive you all the information you need to get started as easily as possible.

9.1. The Office

The VSHN offices are located at Neugasse 6 & 10, in Zurich. The main entrance canbe found in Neugasse 10 on the first floor. We’re located a mere 7 minutes away byfoot from Zurich Hauptbahnhof (Zurich main train station).

The postal code is 8005, and the office telephone is +41 44 54553 00.

9.2. Working Hours

People have different rhythms when it comes to working. Some people enjoyworking really early, while others do their best work in the evening, or even atnight.

26

Page 36: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

The rule here is very simple: as long as your squad is aware of your whereabouts,feel free to find the rhythm that works the best for you. Just remember that mostsquads carry their stand-up meetings every Tuesday to Friday at 11:45 AM, and ifyou can’t attend (not even remotely) please notify your squad mates.

Also pay attention to the fact that, according to your work agreement, you shouldwork 42.5 hours a week, or the percentage thereof agreed for part-time contracts.Not more.

As we’re working in a yearly-hour model you’re free to figure out how to bestdistribute these hours over the year. Some of us are passionate skiers, others likeswimming in the lake a lot. So some of us are working a bit more in summers,others a bit more in the winters which gives the needed time for what you’repassionate about outside working. The rule of thumb: Don’t go below 75 hours ofunder-working and 75 hours above overworking (controlling via Odoo and yourPayslip).

9.3. Your Mentor

A senior VSHNeer will be your Mentor. They will be your primary contact forquestions and must make sure that you receive all required informationthroughout the start of your career at VSHN and your Trial Period (usually the first3 months).

9.4. Your Introductory Blog Post

Once you have finished setting up your workstation, one of the first assignmentsyou will receive is to introduce yourself on our blog. We’ve both an English and aGerman version of it, so you can choose the language that works better for you.You might want to check out the introductions of some of your new colleagues forinspiration, and to get to know each other better.

9.5. Hardware and Software

This section contains some information about your laptop, monitors, desk, andhardware budget.

Laptop

At VSHN we work with open, cross-platforms tools. This means that technically youcan choose any laptop you like to work with. Most of us use Lenovo X1 Carbon or

27

Page 37: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

MacBook Pro machines.

In terms of software, nearly everyone ditches the Windows installation in thelaptops, and uses some Linux distribution instead, such as Ubuntu, Fedora or Arch.Some of us use GNOME, others KDE and others just i3 in our desktops.

Ubuntu has very good support for Lenovo laptops, and manyVSHNeers have installed it, which means they could help you incase of trouble. There is even a page in the wiki about that!

Hardware Budget

Every VSHNeer has a hardware budget of 2400 CHF when starting at VSHN. Thebudget is replenished by 800 CHF per year up to 5 years (4000 CHF). When youreplace your laptop the old laptop becomes your property, so you can use ityourself, or give it to a spouse/child/parent/etc.

In addition to the hardware budget you can choose:

• The keyboard of your choice.

• The mouse of your choice.

You will be provided with:

• Two 27" monitors or one large monitor.

• A Thunderbolt docking station to wire everything together. We’ve tested theLenovo ThinkPad Thunderbolt 3 Dock to be compatible with both Lenovo andApple Laptops.

Every VSHNeer has a standing desk, which includes easy access to electricity and anEthernet cable. Please contact the Office Management Chapter members for anyadditional hardware requirement.

Software

Whichever laptop you choose, you will most probably have to install one or manyof the following software packages.

• A web browser, such as Firefox (a favorite among VSHNeers), Chrome, Edge,Opera, Safari, Brave, Lynx or even just plain w3m.

28

Page 38: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• A chat aggregator like Rambox or Ferdi (aka Franz)

• Office tools, such as LibreOffice for non-techies.

As a techie, you will likely also need these:

• Docker Desktop for Mac or Windows, or Docker Community Edition for Linux.

• An IDE or text editor, such as Codium (aka Visual Studio Code), Vim, Atom,Sublime Text, or Emacs.

• VirtualBox and Vagrant

• Minikube

29

Page 39: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 10. Trial PeriodAccording to the contract, the first three months at VSHN are the trial period. Anextension due to illness or accident is possible.

10.1. During the Trial Period

During the trial period, the new VSHNeer is introduced to their new tasks in atargeted manner, following a written introductory program. They’re given all theinformation about their area of responsibility, team colleagues, organisation andobjectives of the Squad, etc. The new VSHNeer is then introduced to their newtasks following a written introductory program. During this time, the new VSHNeerwill also gain a deeper insight into the company’s philosophy and culture, history,products and services.

Periodic Review Talks

During these three months, a short review with their Squad Master will take placeevery two weeks. It’s important to find out if the employee has received all theinformation about VSHN, and do short assessments of the work done so far.

Information about VSHN

• What does VSHN do?

• What are the different Squads doing?

• How to work with Jira and how to create tasks?

• How to do attendance tracking in Odoo?

• How to do worklogs?

• When are all the regular meetings held, and what meetings are available?

• Where to find the best food in town?

• Where to find things in the VSHN office?

• General company processes.

• PeopleOps, whom to contact.

• Corporate clubs (for example DnD, "beering," concerts).

• Training opportunities (point out that it must be demanded by the new

30

Page 40: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

employee).

• Organisation chart.

• Organisational information/processes.

• Products and services.

• Safety regulations/emergency.

Assessment of the work

• How’s everything working so far?

• How’s the work progress and workload checked?

• Is the introductory program implemented according to plan?

• Are necessary changes implemented?

• Are the working results correct?

• Is the job description still correct?

• Are the main tasks and goals clearly defined?

• Does work meet expectations?

• Is further training necessary?

• Does the new VSHNeer feel comfortable?

• How’s the workplace and climate?

• Are there any wishes, suggestions or potential for improvement?

10.2. End of the Trial Period

Two weeks before the trial period ends the Squad Master files the trial periodreport together with the new employee. The report template is attached to thenew employee ticket. In this report the general satisfaction, expertise, workperformance, personal behavior and team integration is assessed. Furthermore it’sdiscussed whether the employee actually wants to stay with VSHN or not, and ifthere are any target agreements to define regarding further education, workperformance improvements, or similar.

It’s important that all parties prepare seriously for this interview. Not least becauseit’s probably one of the last opportunities to terminate the employmentrelationship with a shortened notice period.

31

Page 41: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Decision

The report is send to PeopleOps by the Squad Master. Also the Squad of theemployee should send a written recommendation to HR whether they want tokeep the new employee or not. Anyone from VSHN can additionally send feedbackor a recommendations to HR regarding new employees, but the Conflict resolutionprocess should be followed first.

PeopleOps writes a report for the next Management meeting, should therecommendation be to not to keep a new employee. The Management takes thefinal decision.

Positive Decision

In this case everything continues as planned. If there were target agreements orfuture review meetings defined, HR makes sure this is controlled and done at thedefined time.

The squad might have a lunch, share a few beers or an apéro together with the newemployee to celebrate the end of the trial period!

Negative Decision

Should the decision be negative for the employee, a meeting is scheduled toinform them, usually with HR or Management.

Should the employee want to leave VSHN during or at the end of the probationperiod, the Squad Master should have a beer or lunch with him and clarify thereasons.

In any case the internal off-boarding process will be triggered.

32

Page 42: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 11. Everyday LifeWorking at VSHN is a special experience, based in collaboration andcommunication. This section provides some information about those little thingsthat helps us to work better every day.

11.1. Weekly Team Meeting

Every Monday at 11:15 AM, the whole company meets for a weekly all-handsmeeting to discuss everything that’s going on across squads. This meeting is calledthe Weekly Team Meeting. New chapters are announced there and everybody canshare news and information, so that we all know what’s going on as soon aspossible. We meet in the cafeteria and will start on time, so please arrive a bitearly. You can attend physically or through video conference.

There is a separate section in this handbook about the WeeklyTeam Meeting with more information.

11.2. OnCall

The technical squads of VSHN provide an optional 24/7 OnCall support service,organized in a rotation. For more details check the Wiki, or consult with yourMentor.

11.3. Office Life

Unlike most offices, we help each other in a collaborative way performing manytasks.

Common Tasks

We don’t have a specific person for small cleaning tasks, so here is a list of thingwhich need to be done when necessary:

• Your are welcome to fill, trigger and empty the dishwasher! (grin)

• Please help emptying the trash bins. There are containers next to the mainentrance (door on the left side next to the entrance).

• Clean the tables after lunch.

33

Page 43: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• We recycle cardboard in the printer room on the first floor; please fold it tomake it smaller!

• Use the vacuum cleaner whenever needed.

Cleaning

Every Friday evening our office is professionally cleaned. The cleaning teamdoesn’t move anything and only cleans free areas.

To make it easier please clean up your (own) space:

• Your desk.

• Floor around your work station (no shoes, no bags, no skateboard, no skis, not"whatever-comes to-you-mind").

• Windowsill.

• Tables in the common room.

• Coffee machine & surroundings.

• Table in the meeting room.

• Your trash bin must be accessible.

Store your stuff in your box, your corpus, or better: if not needed any more, thetrash bin will be happy to help!

Snack Engineering

We do regularly orders at LeShop.ch for drinks and snacks. If you would likesomething special we’re glad to order it for you if possible.

Unfortunately the fridge doesn’t fill up by itself, so please be aware that if you takethe last drink out of it and fill it up. Snacks and drinks are stored in the printerroom.

Microwave

Feel free to use the microwave oven, but don’t forget to clean after you do. If youneed an introduction, Michèle is glad to help.

34

Page 44: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Hot beverages

Same thing for the coffee machine and the water heater: feel free to use it, butdon’t forget to clean after you do.

Coffee machine - the real one

We’ve an exceptionally great barista coffee machine in the entrance room. To keepthe experience great, please follow these simple rules:

• Always check water and refill if needed (it’s not connected to a tube)

• Clean everything everytime you’ve used the coffemachine with the washcloth(make it wet when it’s dry)

• When using the machine to create milk froth, thoroughly clean the steam tubeafter finishing

• Scour the milk-pot everytime after using with water, don’t let it lay aroundwith milk rests and don’t put it in the dishwasher

• Don’t fiddle around with the grinder if you don’t know what you’re doing!

Expenses

The expense regulations should have been handed over to you with theemployment contract. If not, it’s also available in the wiki. Expenses will be paid outagainst presentation of the receipt with the next monthly wage (for example, yourexpenses last month will be paid, together with your salary, this month).

How to record them is explained, as usual, in the wiki.

Technical Orders

If you need to order devices or materials at Alltron, Digitec, or other providers, usethe "Purchase" form (VSHN Cloud / VSHN / 09 Templates / Purchase) and send it tothe Antares squad. Private goodies can be purchased at Alltron at cost.

Medical supplies

There is a first-aid kit in the printer room, bundled with the necessary implementsagainst pain, allergies, and other ailments.

35

Page 45: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Printer Room

This is an important room, as it houses our printers, the shredder, the pharmacy,the drinks and snack store, the office supplies, tools, cleaning materials, etc…

To make a long story short: we store everything there.

Lunch

Our office is very well located for choosing different kinds of lunch. You will findChinese, Indian, Thai, Döner, Italian… food just around the corner. Duringsummertime we often have barbecue on the rooftop! Feel free to join. If you wantto bring your own food from home, cutlery is available in the kitchen and in thecommon room.

Bring any empty bottles to the common room.

36

Page 46: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 12. Salary SystemVSHN has a unique, transparent, open salary system. This doesn’t mean that we’vea list of names with their respective salaries, but rather that:

• We strive for fairness; everybody gets the same salary for the same work.

• We aim for unambiguousness: a salary depends on objective criteria and noton the negotiation skills of individuals.

• We take into consideration the training level, the experience and theresponsibility required for each job.

• We take care of the further development and growing of the know-how of ourteam members.

12.1. Salary System

The Salary System is based on three base concepts:

• A basic annual wage, which has the current "100%" value.

• A work experience level value.

• A gradual increase of the wage in relation to the basic annual wage, accordingto work experience and seniority.

Instead of bonuses, we increase the basic annual wage according to the results ofthe previous year. This allows all VSHNeers to benefit from the success of thebusiness.

The Salary System applies to VSHNeers in engineering and corporate centerpositions. It doesn’t apply to sales team members. In addition to this, corporatecenter positions earn 15% less than engineering positions.

Experience Level Percentage of basicannual wage

Percentage ofexperience from levelzero

Work experience

-1 67% 87% Pregraduate

0 76.66% 100% Solid experience in thejob or a universitydegree

1 82% 107% Engineer

2 87% 114% Senior Engineer

37

Page 47: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Experience Level Percentage of basicannual wage

Percentage ofexperience from levelzero

Work experience

3 90% 117% Senior Engineer

4 93% 121%

5 95% 124%

6 96% 125%

7 97% 127%

8 98% 128%

9 99% 129%

10 100% 131%

11 100% 131%

We determine the experience level of each new VSHNeer according to theircurrent experience, eventually assigning a work experience level bonus at theirentrance in VSHN.

The payment of the salary is divided into 12 installments, paidaround the 25th of each month.

12.2. Salary Evolution

The salary evolution in VSHN follows this mathematical formula:

where is the work experience level (as explained above), and is the yearly salaryin Swiss Francs.

This methodology takes into account:

38

Page 48: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• When VSHNeers take on more responsibilities.

• Steady and continuous training and learning.

• Internal education, being a Mentor and educating trainees.

• More routine and productivity.

• Role growth, taking on higher responsibilities.

• Loyalty to VSHN.

12.3. Deductions

The basic annual wage is a gross number. This means that the legally prescribedsocial security deductions, employee contributions to occupational pensionschemes and daily sickness benefit insurances are deducted in each case.

12.4. OnCall

Many of our engineers are available 24/7 during a whole week (in a rotation basis)to be able to solve issues for our customers as fast as possible, whenever andwherever they might happen. These engineers receive a certain amount per day ofOnCall availability, and outside of office-hours the time spent for actual OnCallcases is payed as 150% worktime.

12.5. Bonuses

As explained above, VSHN doesn’t pay bonuses; instead, every year we evaluatethe performance of the previous year and we decide to increase (or not) the basicannual wage.

The last wage increase happened on January 1st, 2019.

12.6. Trainings and Education

VSHN contributes up to 5 days or CHF 4000.- per year (freely divisible) andemployee for training courses. VSHN can even provide you with up to 5 days offree time to carry out a personal project that could be beneficial for VSHN!

39

Page 49: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

12.7. Holidays and Extra Time

VSHN offers 5 weeks of holidays (25 days). We also offer flexitime and annualworking time.

12.8. Stock Option Plan

The shareholders have committed themselves to give 10% of the proceedings totheir employees in case of a sale or "exit" of VSHN (the so-called "Phantom StockOptions"). This value will be divided among employees according to the number ofmonths they have worked at VSHN, multiplied by the percentage of employment.

12.9. Other Benefits

This isn’t all! VSHN offers other great benefits:

• Swiss Railways "Halbtax" or Half Fare Travelcard.

• Family allowance per kid.

• 4-week paternity leave.

• 14-week maternity leave (in par with Swiss law).

• Possibility to buy hardware at business prices.

• Snacks & drinks available in the office for free.

• 4 team events per year.

• Massages once a month at the office (70% paid by VSHN).

• Free choice of computer equipment, with the possibility to get new materialevery 3 years, and you get to keep the replaced hardware!

40

Page 50: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 13. TimesheetsFor regulation and management purposes, we’ve to keep track of the workperformed in the company in timesheets. This allows the Antares squad to sendinvoices to customers for hourly billed work, and to comply with the local workregulation in the city of Zürich.

We use two systems to track our time: Odoo for attendance and Jira for worklogs.

Don’t wait until the last day of the month to fill in yourtimesheets! Your contract states it should be done by the end ofevery work day, and experience shows it’s even better to do itimmediately during the day, as you go from project to project.

13.1. Odoo

At VSHN we use the Odoo ERP. One of its modules, the timesheet, must be filledevery day in the following way:

• Login into Odoo.

• Select "Human Resources" in the menu above, then "My Current Timesheet"from the menu on the left. Or click on this direct link.

• Every Monday morning, remember to "Create a new Timesheet" by clicking onthe "Save" button before logging time.

• Every morning when you arrive, and every evening when you leave, click on thewhite "check-in" button next to your username. Also check-out and check-inagain while you enjoy your lunchtime break. Alternatively you can edit yourattendance time directly in the timesheet.

• On the first monday of a new month, go through your timesheets of the lastmonth (choose list view in upper right corner) and click on the "Submit toManager" button to close the timesheet and mark it ready to process. Notethat it’s locked after that, so do your work log items (see below) before closingit.

41

Page 51: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

13.2. Jira

In VSHN we use Jira to track every task, its progress and the time spent for it.Whenever you are assigned to a project or a task, there will be a Jira ticket for youto track your time in.

Use the Timetracker to add entries to your work during the day.

There are some common tasks that have their own Jira tickets.

There will be even a task for your own onboarding, and tasks for the team planningsessions of your squad. Request your squad leader for the issue numbers of thoseevents, and log your time accordingly.

We use Jira extensively in many other ways. Please check thecorresponding section in this Handbook for more information.

13.3. Some Time-Tracking Tips

Pay attention to the following guidelines when tracking your time in Jira and Odoo.

15 Minute Blocks

We record time in 15 Minute blocks (not 5, not 20). When in doubt, round up ordown. This is because we use the timesheet entries to bill our customers.

42

Page 52: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Lunch

Lunch time must also be recorded separately as it’s not automatically deducted.Simply sign out & sign back in according to your lunchtime.

Date Overlaps

If you have to work beyond the day change (for example from 22:00 to 01:00o’clock), then you must log out at Odoo at 23:59 and log back in again at 00:01,because otherwise the system gets spoiled and credits you 42 hours (or similar) forthe day!

Outside Office Hours

Outside Office Hours duration is from 20:00 to 08:00 and always arranged! To knowmore about how to record them, check the wiki.

Outside Office Hours aren’t the same like 24/7 for customers.

Sick leave and medical consultation

There is a page in the wiki about how to record sick leaves and medicalconsultations.

Leave Request

The instructions to record a leave request are, as usual, in our wiki.

Home Office & Absences

Absences and home office days must be communicated reliably, and above all theymust be planned, as much as possible! Absences or home office must becommunicated by the evening before; exceptions such as illness and unforeseenevents (train cancellations, etc.) as early as possible, either via Threema or VSHNChat.

Otherwise, we expect you to be in the office every morning on Mondays from11:00, and Tuesdays to Fridays from 11:30 onwards.

43

Page 53: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

If it doesnt fit onto a ticket

Especially in the beginning you will face situations in that you might not reallyknow on which ticket to track your time. Maybe you have a longer informal talkwith someone about work or you need to learn about something before workingon a ticket. There are also tickets for these situations, see Jira for a list.

44

Page 54: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 14. How to do MeetingsAn action item of the VSHNday 2019 was to improve the efficiency of meetingsthrough some easy to follow rules.

To put it in perspective:

American companies hold an estimated 11 million (subjective) meetings perday. It’s predicted that the unproductive portion of these cost the country awhopping $37 billion yearly.

14.1. What’s a meeting?

A meeting at VSHN is a scheduled, prepared and time-boxed gathering of peoplefor the purpose of achieving a common goal through verbal interaction, such assharing information, solving conflicts or reaching agreement.

One-way information sharing is better done in a written way,especially when you don’t expect direct feedback or questions.Meetings to just share information are mostly ineffective andunnecessary.

A meeting has

• A written agenda (before the meeting)

• Written meeting minutes that document the findings from thediscussions and the next steps or action points

• A way to join the meeting, independent of where the participants are

• A note-taker

• A facilitator that guides the meeting

• Usually more than two participants in total

• Scheduled start and end time

The following aren’t examples of meetings

• Working collaboratively on a task or problem, usually at a computer

• Pair-programming or shadowing a colleague

45

Page 55: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Workshops with the goal to produce something new (code,documentation, a proof-of-concept system installation and similar)

Just the fact that you’re in a video call doesn’t make it ameeting.

14.2. General

• Be on time. We start meetings on time. Making others wait for you is impoliteand sends the message that you don’t value their time.

◦ try to be ready at the meeting location 5 minutes early

◦ join the video call before the scheduled start time

This works better if a previous meeting in the same room(physical or remote meeting-id) finishes 5 minutes earlier thanthe time it was booked…!

• Regularly assess if recurring meetings in your calendar are needed at all, and ifso, if the format, length, and attendees are contributing to their effectiveness.Are they not? Change!

• Even as an attendee, make yourself familiar with what it means to be afacilitator. Observe how they drive the meeting and help (not judge) in afriendly way if they forget something.

◦ Pay close attention that a meeting is never ended without action pointsand owners defined.

If the participants leave the meeting, and no one is accountablefor taking action on the decisions that were made, then themeeting will have been a waste of everyone’s time. This iscrucial.

14.3. Attend a meeting

Prepare

• Accept the calendar invite as early as possible.

46

Page 56: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Read the agenda. If things are unclear, clarify before the meeting.

• Remind the inviting person of these meeting rules, should you feel that theyweren’t prepared well enough.

• Make sure that you know how to join the meeting remotely or how to get tothe meeting location on time.

◦ Don’t attend meetings remotely from a bad location (for example a train)or with bad equipment (others will have a bad experience too, not onlyyou).

◦ If no option to attend remotely was announced in the calendar invite,make sure the organizer fixes this.

Rules when attending

• Make sure all participants have your contact information and correct name(usually done by the video call tool or calendar invite). Consider bringing yourbusiness cards when you’re meeting customers or partners for the first time.

• Don’t bring stuff you don’t need during a meeting (lunch or smelling food,paperwork, laptop, etc.), leave your smartphone in your pocket, and turn itinto silent mode.

• Don’t use any electronic devices, when you’re not attending remotely, exceptif you’re presenting, are the note-taker, or you’ve to look up stuff that reallycontributes to the meeting goals.

Staring at your notebook screen in a face-to-face meeting isimpolite. Whereas it’s natural to look at the screen whenparticipating remotely.

• Don’t check e-mails, your smartphone or even work on other things in ameeting. Pay attention and contribute.

In video calls one can easily tell whether a person is activelyparticipating or working on others things.

• Listen carefully and with an open mind, let others speak out and think beforespeaking.

• Stay on the topic - gently push others back if they go off-track.

47

Page 57: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• If someone is speaking too much, cut them off nicely.

• If you figure out you can’t contribute anything during the meeting, kindlyrequest permission to leave.

• Attack the problem, not the person.

14.4. Schedule and facilitate a meeting

Before you schedule a meeting, try to avoid meetings when there is a better way.

First, get different opinions via a written channel or do someshort one-on-one calls. Then prepare a written proposal that willmake it much easier to come to a decisions.

Scheduling a meeting doesn’t necessarily mean that you also are the facilitator, butat least for internal meetings it usually makes sense.

Initiate

• Who do I need for the meeting? Think well about who really needs to attendthe meeting (contributors & decision makers, no spectators).

◦ Keep in mind declining an invitation doesn’t feel nice (to both parties).Asking first (at best with the agenda) helps the organizer to find the rightpeople.

• How long should the meeting be?

◦ A meeting of 30 minutes can (and most of the times will) be as productiveas a 1 hour meeting.

◦ Meetings longer than 1 hour should be a very rare occasion as they needmuch more planning to be efficient. It’s usually better to split the agendainto multiple meetings instead.

• Should the meeting be moderated so everyone has the chance to speak andcontribute?

Schedule

• Create a "Meeting Notes" document in the wiki, including:

◦ Name of the facilitator.

48

Page 58: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

◦ The agenda and discussion items

◦ The list of attendees (defining the facilitator).

◦ The link to the Jira Issue (or Chore) where attendees can log their time.

• Fix the video call meeting-id (for example scheduled zoom meeting or yourfixed personal meeting-id)

• Send a calendar invite to all attendees.

◦ Add the video call join link in the description and if the meeting isremote-only in the location

◦ Book a meeting room (by inviting the meeting room resource calendar) ifyou expect people to join in the office.

In particular for meetings with customers face to face, you mightwant to book overtime (e.g 15–30 minutes) by creating a secondcalendar invite for the meeting room resource only.

Try to set the meeting not in the middle of the morning nor ofthe afternoon, as this creates unnecessary work gaps. It’s muchbetter to set the meeting right before or after lunch as this givesmost of the morning or afternoon for a long strike of work timeoutside the meeting.

Prepare

• Learn how to be a good facilitator and moderator.

At the end of this document there are some links withinformation that can help you become a better moderator.

A day or at least an hour before:

• Update the agenda, if necessary.

• Check the needed tools like video conferencing, a retro-tool, wiki pages, etc.Try to avoid analog tools that don’t work well for remote attendees orincrease the manual effort after the meeting.

• Make sure the room you reserved is available, check that the location is stillcorrect in the invite and that all attendees are informed.

49

Page 59: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• When you’re sure that everyone will attend remotely, remove the booking ofthe room

Meet

• You as the facilitator start the meeting on time,

• Assign a note-taker; if no volunteers are willing to help, do it yourself.

• Be a good facilitator (this includes all the rules of being a good attendee, asdescribed above).

• 10 minutes before the scheduled end, try to stop running discussions in afriendly way, so you have time to:

◦ Define action points including the owner of each action point (this mustgo into the meeting notes directly).

◦ Decide whether open discussion items should go into a next meeting.

◦ Summarize what needs to be done and who is going to do it (definedaction points).

• End on time, even if there are still unaddressed topics, opinions or questions.

◦ Because you are using time of each attendee you would mess with theirtime planning.

Wrap up

In the last minutes of the meeting, or right after the meeting:

• Check that the meeting notes are saved, check and fix typos, etc.

• Add personal notes or brain dumps to the comments or notes (but don’tchange action points or documented decisions after the meeting!).

• If useful, send the link to meeting notes (or for external customers a PDF) toall attendees.

• Does the outcome have value for the whole company, consider adding it to thenext team meeting notes.

14.5. Links

Worth a read:

50

Page 61: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 15. Meeting RoomsThe following rooms are available and bookable via SOGo.

15.1. For Meetings

Use these meeting rooms for meetings with customers or formal internalmeetings:

Mandalore (Big Room in Neugasse 10)

• 12 pax, conference owl, projector, whiteboard

• Mail to reserve the room: [email protected]

Endor (Bigger Room in Neugasse 6)

• 4–6 pax, conference system, whiteboard

• Mail to reserve the room: [email protected]

Naboo (Small Room in Neugasse 6)

• 4 pax, flipchart

• Mail to reserve the room: [email protected]

15.2. Other Rooms

As a general rule, the entrance shouldn’t be used for meetings. The main entranceis located here and we pick up visitors there, which doesn’t guarantee a meetingfree of disturbances. If there’s no other room avaiable this room can be used forinformal meetings.

Yavin (entrance)

• For informal meetings, waiting room: 2 chairs, coffee table

• Mail to reserve the room: [email protected]

52

Page 62: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

15.3. Internal rooms

VSHNneers have precedence, use one of the meeting rooms above for a customermeeting if possible. If there are no more rooms avaiable the follwing rooms can beused for meeting eceptionally. Be aware, that access for all VSHNeers must begranted every time.

Tatooine (Common room)

• Access for lunch must be granted

• For lunch, bigger Teammeetings, exceptionally meetups & bigger Meetingswith customers (must be announced/asked in advance): 6 tables, 36 chairs,screen

• Mail to reserve the room: [email protected]

Coruscant (Coffee room)

• Accessible at all times

• For coffee breaks, informal conversations, workgroups: Coffee machine, bigtable, 6 chairs, 2 beanbags

• Mail to reserve the room: [email protected]

53

Page 63: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 16. Company LanguageVSHN was started by Swiss nationals in the German speaking part of Switzerlandback in 2014. For most of us it was only natural to speak in our native Swiss Germanlanguage, and thus we wrote most of our early documentation in German.

Since then we hired more people from all over the world. Now a growing numberof VSHNeers don’t speak or understand German. Fortunately it’s very common tofind very good English speakers in the IT industry; therefore in 2019 we changedthe official company language to English.

The official company language for written text is English. Inmeetings it’s just polite to speak the language that everyoneunderstands–this is usually English as well.

16.1. Does this mean you shouldn’t speak yournative language?

Of course not. You’re free to use whatever language works best for all participantsin a conversation. For most official meetings, be it internal or with externalpartners, this means that we speak English.

Remember that we document in English–even when speakinganother language in a meeting. You never know who will readthe notes later and will need to understand its contents.

During breaks, company events and when we’ve lunch together you usually seesome groups speaking a native language like Swiss German–this is great as it’s ourfree time, and usually a very welcome change from the official daily routine. Don’tbe afraid to join such a group though, as we will simply switch languages then.

16.2. Improving language skills

Keep in mind that not everyone is equally proficient or feels comfortable to speaka non-native language. Be sympathetic towards small grammar mistakes, wrongwords and bad pronunciation. Apply the robustness principle: "Be conservative inwhat you send, be liberal in what you accept."

Most VSHNeers are eager to be corrected, or to get vocabulary suggestions whensuch mistakes happen. On the other hand, please don’t create awkward situations

54

Page 64: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

during presentations or bigger meetings by interrupting the presentation flow.

Depending on your language proficiency it can be tricky to write good text in anon-native language. To ensure quality, particularly when communicating withthird parties, apply the "four-eye-principle" (or pair programming) and let acolleague review your text before saving or sending.

Last but not least, remember to use an online translation service or a dictionary,request help from colleagues, use your education budget to improve your skills,and take your time when writing.

16.3. Links

Worth a read:

• Say What You Mean (SWYM) by GitLab

• Gender-neutral Technical Writing

55

Page 65: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 17. Weekly Team MeetingAt VSHN we’ve an all-hands weekly team meeting. The goal is to keep allemployees on the same page on what’s going on at VSHN.

Here team in team meeting means all VSHNeers. This is ahistorical term we’re using since the early days of VSHN.

When Mondays, 11:15 AM to 12:00 AM

Where Remotely in the Zoom room linked in the#general chat channelor face to face in our common room("Aufenthaltsraum") at Neugasse 10, Zurich

When you have the chance, participate in person at Neugasse10. With a lot of us working remotely quite often and preferringdifferent working hours this is great opportunity to see eachother.

Rules

• To respect the time of every attendee follow the meeting rules.

• Even we encourage everyone to attend in the office when possible, pleaseuse tools and presentation methods which work for remote attendees (forexample present content via zoom only).

Meeting Protocol

Every weekly team meeting produces meeting notes stored in our wiki:

• The meeting notes have to be pre-filled with the agenda (see template here)

• We usually don’t talk about topics which weren’t in the agenda before themeeting

• The meeting chair writes down the results of the discussions and mostimportant comments in the second column.

• The meeting protocol wiki link will be emailed to everyone after the meeting.

The Sol squad creates a new protocol from the template (if not yet done bysomeone else) and checks all items before, during and after the meeting.

56

Page 66: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 18. SquadsA squad is the basic unit of organization in VSHN. Every team member is assignedto one and only one squad. Each squad has a Squad Master, a certain number ofmembers, a particular mission and works on certain products and services. Squadsare orthogonal to chapters.

Each squad organizes itself, and has its own methodology and rhythms, usuallyfollowing agile principles. Most of the squads follow a Kanban approach toproject/task management. They adapt to the requirements of their customers inreal time and communicate every day about the current events going on.

When you join VSHN, you are going to be assigned to a squad.

18.1. Current Squads

Our team is currently divided into the following squads:

57

Page 67: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Name Mission

Altair Incident Handling and Customer Happiness

We’re the VSHNeers at the front takingownership of daily customer business andincident resolution.

Antares Backoffice

Keep the show running in the background.Responsible for accounting, PeopleOps (thisincludes recruiting, onboarding, staff care,offboarding), office management, legal andcompliance and organize team events.

Capella Application Delivery

Helps customers to get their applicationsrunning on any infrastructure, deployedautomatically, preferably on modern (VSHNmanaged) cloud platforms. This includescontainerizing customer applications,engineering deployment configurations,automating the deployment process (CI/CDpipelines), integrating application monitoring(third-party or for our SLA-based operations onVSHN managed platforms).

Eltanin Project and Service Management

Supports other squads with comprehensiveproject management, resource and priorityplanning. Common tasks involve the overview ofprojects, creation of project schedules,administrative work, support and coordination ofthe technical teams in various situations. Thisallows the expert teams to fully concentrate onthe technical aspects.

At the same time we ensure a coaching function,helping engineers to plan and execute customerprojects. The job of this squad is to answer allquestions about project management, in bothexternal and internal projects.

Polaris Base Infrastructure and Classic Hosting

Runs the basic VSHN infrastructure (DNS,Backup, Monitoring, Puppet services, …) andmanages the Puppet managed customerinfrastructures.

58

Page 68: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Name Mission

Sirius Container Platform Infrastructure Builds andoperates container platforms reliably andsecurely, so that its customers can concentrateon running its applications.

Runs the public and private container platforms.Be it self-installed and managed (on-premise,classic IaaS) or managed container platforms(EKS, GKE, AKE, …).

Sol Marketing and Sales

Responsible for marketing and sales efforts ofVSHN products and interaction with customers-to-be. This includes external communication,publications in the press, manage our websitecontent, organize events, promotional material,and answering first contacts with new customersand contract negotiation.

The list of assignement can be found in our Wiki under Squads at VSHN.

The names of the squads are stars used for navigation! Theycome from this page.

18.2. Rules for all Squads

• Each squad chooses and uses an appropriate working method (Scrum orKanban)

• Each squad manages its own work planning, based on the tickets in thebacklog

• Each Squad Master is the go-to-person for project managers to get tasks intothe squads backlog and coordinate task priorities and deadlines.

• Squads work with each other and not against each other. We foster an inter-Squad "Open Source" culture

59

Page 69: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• It’s possible for a VSHNeer to change into another Squad

• The goals of a squad will be determined together by the Squad membersthemselves

• A Squad performs regular team retrospectives every four to six weeks

18.3. Assets of a Squad

For a squad to exist, the following assets exist:

• A Squad Master

• One or more squad members

60

Page 70: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Listed in this pages squad table: Current Squads including the squad missionstatement

• LDAP group containing all squad members

• Listed in Jira dropdown field Squad

• A wiki space dedicated to the squad

• Members assigned to the squad in Odoo

• Optionally an amount of Jira dashboards and boards

18.4. Squad Assignement

A VSHNeer is assigned to a squad by:

• Amending the table under Squads at VSHN

• Assigning to the according LDAP group

• Updating "Department" field in Odoo

18.5. Daily Stand-Up

There are some rules on how to run a stand-up meeting, although every squad canarrange their own rules:

• A person in the squad is responsible for the organisation of the stand-upmeetings.

• The stand-up meeting is carried out separately for each squad, with eachsquad member having a maximum of 1 minute to tell us what they’re workingon.

• The stand-up meeting starts promptly at 11:45 (everything should be preparedbeforehand, including access via Jitsi or Zoom for those attending remotely).

• Every VSHNeer arrives at the stand-up meeting prepared and ready.

• Individual tickets aren’t discussed at the stand-up meeting.

• It’s not told in order, but in random order.

61

Page 71: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 19. Altair SquadAltair isn’t a usual Squad at VSHN. VSHNeers from the tech squads Capella, Polarisand Sirius rotate in and out to form this dynamic Squad.

19.1. Mission

We’re the VSHNeers at the front taking ownership of daily customer businessand incident resolution.

The Altair Squad is responsible for but not limited to daily customer business andincident resolution. For this Altair triages new tickets, reacts to monitoring alerts,answers customers Requests and resolves Incidents.

Altair exists to remove interrupt based work patterns from other Squads and servecustomers independently of the other squads that build and maintain services for acustomer.

19.2. Rotation from Home-Squads

The term "Home-Squad" refers to a Squad sending VSHNeers toAltair.

The Home-Squads send VSHNeers to Altair for a fixed duration, following theserules:

• The rotation planning is the sole responsibility of the Home-Squad

• All VSHNeers, including the Squad Master, from the tech squads participate,shifts distributed as equally as possible.

• All squads send at least 2 VSHNeers to Altair.

• The VSHNeers from a Home-Squad cover the required skills for Ticket Triage,Monitoring Operations and resolving the usual Incidents in addition toanswering common customer Requests.

• Rotations should overlap at least 1 week. This prevents workflow interruptsin Altair and makes it easier for new VSHNeers to join for the first time.

• Rotation length is 1 to 4 weeks. The Squad decides on this taking necessaryskill-sets and personal liking into account as good as possible.

62

Page 72: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Read Rotating in and out of Altair to learn about how to join andleave Altair.

19.3. Squad Culture

The stakeholders of the squad are the Home-Squads represented by their SquadMasters. The Home-Squads do retros that also cover the mission, work and cultureof Altair. Action points and feedback regarding Altair should always be discussedbetween the Squads and forwarded to the Squad Master of Altair.

The Squad Master of Altair is a fixed person and no differentthan in other squads - a servant leader and moderator only. Thesquad master isn’t responsible to plan shifts, ensure quality, takedecisions on triage problems or fix badly refined tickets.

Daily Stand-ups

The squad does daily stand-up meetings like most of the other squads do. Thestand-ups are mainly to share knowledge, offer or request help and solve dutiescoverage problems.

Altair sync meetings

At least 2 times per week there is a longer sync meeting with all current membersfrom Altair. As interrupt based work can’t be planned, this is more about assigningand discussing less urgent tickets, making sure that nothing gets lost, etc.

Stay connected to your Home-Squad

One of the biggest goals of Altair is to split planned from interrupt based workpatterns. On the other hand, a total disconnect from the Home-Squad can result invarious problems. Therefore you’re allowed and should:

• Participate in your Home-Squad’s Chat channel.

• Attend the Home-Squad’s sync meeting(s), but try to leave early when theydive too deep into project work topics

• Be up2date of maintenance work and planned changes the Home-Squad does,as this could have an impact (fallout) on your Altair Incident handling job

63

Page 73: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

19.4. Responsible Ops

In Altair, from each Home-Squad one person is responsible that Triage andMonitoring Ops is working for the customers and technology related to their Home-Squad. The responsible person also ensures that this tasks are covered duringbusiness hours (09:00–18:00 Zurich time).

This doesn’t mean that this person has to work 09:00–18:00 (Zurich time) every day.Handing over some or all duties to another person is possible anytime, if done in acoordinated way.

Even when handed over, it’s your overall responsibility.

Assignment of this role

As this role is about being responsible only (not necessarily doing it yourself) thiscan be any of the VSHNeers from one Home-Squad. For that reason we follow afixed rule who this person is:

The person that has been in Altair the longest during thecurrent rotation cycle is Responsible Ops.Exception: When all VSHNeers of a Home-Squad rotate at thesame time, it’s the person defined by the Home-Squad duringrotation planning.

The current role owner is always documented (manually) on the Altair Home in theWiki

Handing over the role

If discussed in an Altair sync meeting, the Responsible Ops role can be handed overto another person of the same Home-Squad.

Duties

Make sure that at least one person of your home-squad is doing the following inthis priority order:

1. Monitoring Operations (high priority Incidents)Sometimes it’s not easy to asses the priority: You have to be aware of theimpact (get another opinion from the team)

64

Page 74: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

2. Ticket 1st stage Triage

3. Ensure urgent Incidents are worked on in time!

4. Ticket 2nd stage Triage

5. Monitoring Operations (low priority Incidents)

6. Monitoring Operations (Problems, for example WARNINGs)

7. Only when there is nothing left in 1–6 → Work on tickets while constantlychecking Triage filters and the monitoring alerts

Communicate

• With others being Responsible Ops

• With the other people of your home-squad in Altair

19.5. Monitoring Operations

2–3 VSHNeers are responsible (ensured by Responsible Ops to handle MonitoringAlerts, they can split the workload according to home-squad skills to be moreefficient (can be shared with Ticket Triage).

Goals

• Efficiently handle small things that pop up

• As soon as anything is changed on customer systems or we’ve to contact thecustomer, track the situation in a (new) ticket

• Keep the monitoring green

◦ No unhandled CRITICAL / DOWN in Monitoring older than 15min Evenif CRITICALs are actually not that critical they still pop up on thedashboard, can generate notifications to customer, confuse other teammembers when they check the Monitoring / Dashboard.

• Handle mails in the Maintenance Mailbox.

How?

Rules

• It’s okay to fix small things (<15min effort) directly without a ticketLog work to the Monitoring Ops Chore in Jira.

65

Page 75: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• As soon as you change anything or need customer feedback (configuration,resizing, scaling, etc.) on a production system (especially customersystems) create a ticket in the customer space in Jira

• Tickets created from Monitoring Operations already have 1st stage Triagequality

◦ When you start working on it directly, make sure you bring it to 2ndstage Triage quality first or as soon as there is time for it

Don’t over-refine tickets. The priority is to resolve Incidents intime and fix small things directly to prevent incidents.

Per issue (Alert) you’re handling

1. Check if there is already a ticket for the issue, if not create one. ACK thealert with the ticketSee filters on this this wiki page or search in Jira.

2. We try to reproduce the issue and document in the ticket what happenedand all information we can find within reasonable time (<15min):

◦ log in to the server, checking the logs of the service, describe thefailed pod, etc.

◦ check if there are other similar problems in monitoring (on same host,same customer, same service for other customers, etc. - correlatethings)

◦ We assess the impact and describe it in the ticket. When unsure, wecheck with Service Managers or Product Owners (or at least withinAltair).

3. When urgent, we fix the issue directly or get someone else from Altair tostart working on the Incident

4. Work on bigger issues as soon as all other issues are handled (and if you’realso on Triage duty and if nothing todo there)

5. If the Incident is likely to happen again or already known we create aProblem tickets for other tech squads, see Creating tickets for othersquads.

19.6. Ticket Triage

When customers, partners or VSHNeers create new tickets, they pop up in Triage

66

Page 76: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

filters we use in Altair. The responsibility of Altair is to triage these ticket andrefine them into a usable state.

VSHNeers create tickets in Jira directly, and ensure it’s of goodenough quality to make triage easy or obsolete. Customers cancreate tickets either via the VSHN Portal or E-Mail [email protected].

1st stage Triage

In the first stage of the triage process we find out whether the ticket is furthertriaged and refined by Altair or not.

You find the link to the Jira Dashboard with all necessary filterson the Altair Wiki Homepage.

How we do 1st stage Triage is documented in the wiki, as this procedure is stillchanging a lot.

The following tasks are further handled and / or resolved by Altair:

Classification Description Altair Action

Incident Unplanned interruption to orquality reduction of a service

Refine task to usable state andresolve incident.

Incident Prevention Prevent an Incident proactively.Usually with the help ofmonitoring / graphs, forexample a disk filling up, etc.

Resolve the situation toprevent potential Incident.Create Problem task for theHome-Squad to solve theunderlying issue.

Request Request from a customer (orinternally) for information,advice, a easy and standardchange, or access to a service

Clarify requirements (withcustomer), assess(authorization, feasibility,security, effort, impact, etc.),work on and complete task.Transform into a Change ifneeded.

The following task are usually not further handled and / or resolved by Altair:

67

Page 77: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Classification Description Altair Action

Change The addition, modification orremoval of anything that couldhave an impact on a runningservice.

Handover to the ServiceManager or the TechnicalService Manager for clarificationand further refinement. Assignto Home-Squad if clear whichSquad.

Problem Root-cause analysis andpotential resolution planningfor one or more current,potential and past Incidents

Handover to the ServiceManager, the Technical ServiceManager or the Product Ownerfor clarification and furtherplanning. Assign to Home-Squadif clear which Squad.

Project Task A task belonging to a runningproject.

Handover to the ProjectManager of the project forfurther refinement andplanning.

Everything else Tasks not fitting into thisclassification table, for example:Sales, backoffice, finance andorganizational developmenttasks, Research task and similar.

Check with the creator of theticket to handle the ticket to apoint that it doesn’t longershow up in Triage filters.

2nd stage Triage

Done by the Ticket Triage VSHNeer or the VSHNeer starting to work on a urgentticket for all tickets that come from 1st stage TriageDepending on the urgency, resolving the Incident is usually more important thanrefining the ticket.

Goals

• Ensure ticket quality

◦ Make it possible to review tickets (task deliverables, reproduce issue,etc.)

◦ Eliminate misunderstandings between customer / VSHN

◦ Make tickets look the same, where useful. No one likes to startworking on ugly tickets

• Have estimates on bigger tasks

◦ Make it possible to escalate when estimate is reached soon

• Actually Select the ticket, so that it appears on Kanban Board

68

Page 78: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

How we do 2nd stage Triage is documented in the wiki, as this procedure is stillchanging a lot.

19.7. How we work with tickets

Once tickets went through Ticket Triage, they either appear on our Kanban boardor as New tickets in other squads.

Altair tickets

You find the link to our Kanban board on the Altair WikiHomepage.

Usually we try to follow Stop starting, start finishing in VSHN, but in Altair we’ve toreact on interrupts like new Requests and Incidents (from tickets or MonitoringAlerts). A new ticket can always have a higher priority which means that you stopworking on a ticket and concentrate on another, more urgent ticket.

If something is urgent it usually can’t wait to be pulled from theKanban ToDo list, the VSHNeer on Triage duty will ping you andsend you the ticket link.

Besides the very urgent Incidents, we pull the work from the Kanban ToDo column,starting with the highest priority (the priority field) Incident, then everythingelse, using the set priority.

Every time before you start working on another ticket, check the KanBan board tomake sure that there is nothing more important laying around.

Tickets for other squads

There are two types of tickets Altair touches but doesn’t work on. Still, to somepoint, it’s our responsibility to make sure these tickets are picked up by the othersquads.

• New tickets assigned to other squads during 1st stage Triage

• Altair creating new tickets for other squads

69

Page 79: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Once triaged to Altair and worked on, a ticket must never leaveAltair again. This is important to have a clear ownershippreventing "ping-pong" between squads and give the customerthe single-point-of-contact experience.

Creating tickets for other squads

• Create the new ticket correctly (squad, blocks, summary, template, etc.) -basically the ticket has 2nd stage Triage quality.

• Add a follows link to the original Altair ticket - which was the reason forcreating this ticket

• Assign the ticket to the Home-Squad

• Leave the ticket in the New state

◦ Tickets in "New" state must not have any time logged on them. You mustlog time on the previous Altair ticket instead.

◦ When unsure whether the ticket is seen and picked up by the other squad,inform the Squad Master about the new ticket

◦ It’s up to the squads how they see and handle such tickets, usually theyhave daily e-mail notification for New tickets and go over all New tickets inthe weekly planning.

Leaving tickets in the New state is crucial. Only then tickets pop-up in filters of the Home-Squads and can get e-mail notifiedautomatically. Also it’s the Home-Squad’s job to decide whatthey do with such a ticket.

70

Page 80: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 20. Rotating in and out ofAltair

20.1. Your first day in Altair

First of all, welcome to the Altair Squad!

When it’s your first rotation into Altair or when you haven’t been in Altair for sometime this page helps you to get started.

First read and understand the concept of Altair.

The following links bring you directly to the pages and sections which are mostrelevant for your daily work in Altair.

Related reading

• Altair Wiki HomepageHas all the links to documentation, Jira boards, etc. and show the currentrotation and Responsible Ops planning

• Responsible OpsWe use the role of Responsible Ops who make sure that Ticket Triage andMonitoring Operations is done

◦ Ticket TriageHow we triage new tickets and customer requests

◦ Monitoring OperationsGuidelines the help you handle our monitoring stack, react to alertsand explain our goals.

• How we work with ticketsHow we work with Altair tickets and between squads, onces they’retriaged

Once you’re done with the guidelines you can start working on tickets already!

It’s recommended that you sit down with the Squadmaster or anexperienced colleague to go over the docs and guidelines,especially when it’s your first time in Altair.

71

Page 81: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Tools you need and should know

• Be in the #altair channel of RocketChat

• Useful helper tool: git.vshn.net/vshn/vshncli

• Have Zoom installed, tested and logged-in with your VSHN zoom account:

◦ Ready to receive zoom phone calls and video calls

• Access to VSHN Monitoring

20.2. Handover when leaving Altair

When a shift changes, we need to make sure that tickets are being worked on bythe new members.

It’s your responsibility to hand over all tickets assigned to you.

• On the day before your rotation ends (usually a Friday), please schedule aquick meeting with the member rotating into Altair and go over your tickets.

• Is the person rotating in not able to meet, please schedule a meeting atearliest convenience.

• Make sure your tickets are in a state that allows to hand them over. At the endof said meeting, you shouldn’t have any Altair tickets assigned to you.

72

Page 82: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 21. ChaptersA Chapter tackles "cross-cutting concerns" in VSHN, such as documentation,recruiting, or security. They’re formed by members from various squads, allinterested in solving a particular problem with an impact in all squads across thecompany. Chapters are orthogonal to squads.

Chapters are organized in the wiki, where they have their own space. They havetheir own task lists and meetings schedule. You can browse the list of chapters inthe wiki; feel free to join one or more of them if you feel like you could contributeto the discussion.

21.1. Structure

A Chapter…

• … consists of a bunch of VSHNeers from different squads who are interestedin a topic and want to take care of it.

• … meets regularly to talk about the topic in question.

73

Page 83: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• … decides on steps to take.

• … is long-living (that means chapters aren’t suitable for short-lived topics).

• … is self-organized.

A list of all current chapters can be found in the wiki.

21.2. Responsibilities

Chapters have the following common responsibilities:

• Refinement of issues in its backlog.

◦ A Squad can assign an issue to a Chapter for refinement if needed.

• Discuss details about issues pertaining to the chapter’s purpose.

• Review (eventually code review) of changes in projects managed.

• Discuss proof-of-concepts (POCs) and decide how to proceed (for example,create or suggest new projects).

21.3. How to Create a Chapter

Strictly speaking, as soon as two or more people agree to tackle a long-terminternal issue in VSHN, a chapter is born. The checklist below provides someguidelines on how to bring it to reality.

1. Create a wiki space and name it appropriately, see the documentation chapterguidelines.

2. Create a JIRA Chore blocking the right VINT-XX named "<Chaptername>Chapter Meetings."

3. Create a channel in rocketchat with #<chaptername>

a. Include the link to the JIRA Chore and to the Chapter Wiki page in thechannel topic. This helps that everyone knows how to log the time spentfor the chapter.

4. Link the wiki space in the List of Chapters.

5. Announce the existence of the new chapter in the #general channel and in thenext team meeting.

74

Page 84: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

6. With the VSHNeers interested in the chapter:

a. Clearly define the chapter mission and write it down on the wiki page.

b. Define the required communication channels, and document them (forexample, create a chapter chat channel and document it on the wiki page).

c. If needed, request an update of the "Chapter" field in JIRA to add the newChapter to the list, and update the JIRA filter on the chapters wiki page.

21.4. How to Abandon a Chapter

When there is no more interest in a chapter, or its purpose has been fulfilled, wecan abandon a chapter following these steps.

1. Announce the situation on #general channel, and if there are no objections:

a. Archive the corresponding wiki space.

b. Document the reason for the abandonment on the chapter home page.

c. Remove the chapter from the JIRA "Chapter" field.

75

Page 85: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 22. Working at the officeVSHNeers are free to choose to work remotely or in the office.

22.1. Security Information

• Our main doors are self-closing. You can only enter them by using your key, sodon’t forget to carry the key with you.

• If you use the goods lift in Neugasse 6 you need to grab the special key to goto the second floor.

• Visitors have to fill in a visitor form (also for a quick visit and also if you knewthem) due to ISO 27001 certification. These forms can be found at the mainentrance in Neugasse 10.

22.2. Different offices

We’ve three different offices in Neugasse 6 & 10.

• "Old office" (Neugasse 10, first floor): The Main entrance is located here, alsoone meetingroom, the common room, the kitchen and the Coffee room.

• "Altair Office" (Neugasse 10, second floor): The home of Altair Squad. Thesedesks are floating, if you are in Altair and liket o work together with yourteporary teammembers, please find you workplace here

• "New Office" (Neugasse 6, second floor): The extended office, find two moreMeetingrooms here. The offices aren’t VSHN-marked (yet) and we don’t have adoorbell, so make sure to guide your visitors to the official entrance and pickthem up there.

22.3. Dedicated desks

Everyone who commits to be in the office on at least two days per week has a fixeddesk at the VSHN offices in Zurich. You’re free to change temporarily to any otherfree desk if it helps you to focus, work together or just for a change of scenery.When doing so, please adhere to the Desk sharing rules.

76

Page 86: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

22.4. Desk sharing

In addition to desks dedicated to VSHNeers we’ve spare workplaces in mostoffices, they usually also consists of one big or 2 smaller screens, a docking stationwith charging power, electrical outlets, adjustable chair and desk, etc.

Besides the dedicated desks, we don’t schedule who sits at which desk, it’s a first-come, first-served approach. Still we’ve some rules when using spare or foreigndesks:

• Most VSHNeers are okay with using their desk in their absence, but pleaseprefer to use a free desk over one that’s dedicated to a VSHNeer.

• When there is no notebook or other personal belongings at a desk it’sconsidered free to use for everyone.

• Keep the desk clean, especially when you don’t plan to sit there the next day

• Don’t change the infrastructure.

• Every VSHNeer has one or more boxes to store personal belongings, take thebox(es) with you or store them in a shelf.

22.5. Including remote VSHNeers

With everything we do in our daily work we should follow a documentation-firstand remote-first approach. This means that we don’t discuss and decide aboutwork related things face-to-face during conversations in the office. Especially whenonly part of the squad, stakeholders or interested people are around. Instead we:

• Move discussions about work-related topics into our discussion forum.

• Prepare suggestions in the wiki, as a merge request or as tickets commentsand request feedback in the chat, squad meetings, stand-ups, etc.

• When talking and deciding about next steps, solutions, etc. in a ticket,document the decision and next steps in the ticket

• Prefer written chat conversations over conversations in the office

77

Page 87: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

You should still talk with each other in the office, socialize andhave fun. We’ve spontaneous verbal conversations about work,this is only natural, just keep in mind to document decisions andrequest feedback before you just do something after aconversions.

22.6. Meetings

We plan and schedule meetings, workshops, retros, etc. - basically everything thatinvolves discussions - as video calls so everyone can join from anywhere. Wealways try to prefer digital collaboration tooling over things like flipchart,whiteboard, etc. so that everyone has the same experience and context.

Exceptions

• All invited people agreed in advance to be at the office, then a meeting canbe held in a physical meeting room, using any tools available there.

• Customer and partner meetings, where we focus on what works best forthe other party.

78

Page 88: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 23. Working remotelyVSHNeers are free to choose to work remotely or at the office.

Working remotely is part of the work culture at VSHN. This page collects all youneed to know about working remotely as a VSHNeer. Especially during COVID-19we found out that even with everyone being remote everything works out verywell.

23.1. Rules

Some rules for working remotely:

1. Keep your SOGo calendar up to date.

2. Let others know your availability in the #general chat channel and by settingthe appropriate status in the chat.

3. Have Zoom and Chat open regularly (Be sure to have a Zoom account with yourVSHN address.)

4. Stay focused on remote / Zoom meetings.

5. If you have questions, write them in Zoom Chat during Teammeetings ormeetings with many participants.

23.2. Socializing

In times when we don’t meet each other regularly, here are some ideas to stay insocial contact:

• Hang out in the #remoteoffice channel in our VSHN Chat.

• Share a picture of your current working space in the #remoteoffice channel.

• Tell others where you’re currently located if you change your work locationfrom time to time.

• Join the "lunchtime" Zoom channel during lunch.

• Meet regularly in Zoom for a "coffe-break."

• Post funny stuff in the #off-topic channel.

• Add your remote office coordinates to the shared map.

79

Page 89: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Find the links to these Zoom channels and the map in the#remoteoffice channel.

23.3. Tips and Tricks

Get yourself a comfortable working space

It should be comfortable and follow your preferences; you’ll spend the most ofyour time there.

Work out your routine and stick to it

Figure out your daily routine for getting work done, and bring yourself up intowork-mood.Develop your "starting day" routine. Some people like to do the same thingsthey do when going to office, like shaving, applying make-up, or wearingnormal office clothes.Schedule small breaks to drink cofee/tea or to look outside your window. Thatwill be good for your mental and physical health.Don’t forget to exercise. This could be as minimal as go for a walk outside.Also develop an "ending day" routine. Create a set of actions that signals theend of the workday and stay out of the computer, at least for some time.

Stay productive when working remote

Avoid distractions like TV or other devices that can remove your focus.Don’t do normal domestic work, like laundry, cleaning, etc.Set rules with the people that live with you during work-hours (family, kids,friends), like not entering the room and not doing any distracting noises.During meetings, close room door and reduce the possible noise from petanimals. Also, use mute when not talking.

Working abroad (out of Switzerland)

Set your computer to the same timezone as Switzerland (VSHN Main Office.)

Request for help

Feel comfortable to request for help. Don’t spend too much time trying tofigure out something that can be done with the help of others.

Know when to stop working

Usually time flies working remotely, and when you look to the clock you havedone more that expected. Set a time when to "stop working." Count all hours

80

Page 90: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

and be strict with them.

23.4. Links

Many others have written about best practices about remote working; here aresome links to interesting articles:

• Top Tips for Working From Home (dev.to)

• New to Working from Home? Here Are Some Tips to Help You Meet Like a Pro(blog.zoom.us)

• (German) Homeoffice in Zeiten des Coronavirus: Tipps und Tools (eine laufendergänzte Liste) (konradweber.ch)

• 20 Tips for Working From Home (pcmag.com)

23.5. Fun

Having a remote teammeeting can be fun as well, see by yourself:

81

Page 91: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 24. Communication ChannelsVSHN has well-defined communication channels. This page explains the rules andthe expected reaction times for each one of them. Some channels are good forshort- and some for long-lived discussions; some are mandatory for all VSHNeers toparticipate in.

Regarding confidentiality, please refer to the ISMS - Richtlinie zur Klassifizierungvon Informationen wiki page, which is the source of truth on what informationwe’re allowed to distribute over which channel.

Please don’t introduce new communication channels withoutprior approval by the OrgDev chapter and GL.

24.1. Written Channels

VSHN Chat

Please check the "Chat Channels" page for more informationabout the names of important communication channels we useevery day.

Functionality

Direct messages to VSHNeers and partners (when invited)

Channel messages for VSHN internal and with partners.

Information Lifetime

Less than 8 hours

• Bad search experience.

• No guaranteed history availability.

Used for

Daily written internal communication.

Efficient communication with partners when ticket is too inefficient.

82

Page 92: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Information Classification Level

Internal

Expected response time of VSHNeers

Direct messages or mentions: ~4h during logged attendance time.

• Channel messages: best effort.

• Customer contacting VSHN: best-effort, no guaranteed answer (if urgentcustomer uses phone or ticket)

Mandatory for VSHNeers

Yes, during logged attendance time.

• Be online.

• Or offline but check every few hours.

Please make yourself familiar with the No Hello rule: "PleaseDon’t Say Just Hello In Chat".

VSHN Announcements Channel

Functionality

• VSHN wide announcements important to know for every VSHNeer in the#announcements channel.

• Moderated - Not everyone can post messages. No discussions allowed.

• Channel in VSHN Chat #announcements.

Information Lifetime

Up to a year

• Searchable.

Used for

• Announcements which are mandatory to be read by every VSHNeer.

• Catch-up after Holidays or longer absences.

83

Page 93: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Information Classification Level

Internal

Expected response time of VSHNeers

No response expected, it’s a one-way communication.

Mandatory for VSHNeers

Yes, during logged attendance time.

Ticket

Functionality

• Mention VSHNeers in comments.

• Comments can be sent to customers.

• Customer E-Mail replies added as comments.

Information Lifetime

The scope of the ticket

• Searchable.

• History with timeline.

Used for

• Discussion about a specific task.

• Customer orders and changes.

• Incidents.

Information Classification Level

Internal

Expected response time of VSHNeers

• VSHN internal: ~4h.

• Triage: 15m.

• Assigned tickets depending on priority: 1-4h.

84

Page 94: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Mandatory for VSHNeers

Yes, during logged attendance time.

• React on notifications, check every few hours.

• Keep your tickets updated.

VSHN E-Mail

Functionality

• Encrypted or unencrypted.

• Internal or External communication.

Information Lifetime

A few days to a week

• For personal use only.

• Searchable.

Used for

• Customer and Partner communication which doesn’t fit into tickets.

• Sales, High Level Project Management.

• VSHN wide announcements.

Information Classification Level (Unencrypted)

Public

Information Classification Level (PGP encrypted)

Confidential

Expected response time of VSHNeers

• Next business- or working day, use vacation responder when away.

• Can depend on role (for example Sales or Project Managers have otherrules here)

85

Page 95: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Mandatory for VSHNeers

Yes, during logged attendance time.

• Watch for new mails every few hours.

Threema

Functionality

• Direct messages to VSHNeers.

• Private use.

• VSHN channels.

Information Lifetime

Less than 8 hours

• Bad search experience.

• No guaranteed history availability.

Used for

• Getting help (best-effort) out of office hours.

• Dedicated emergency channel should our VSHN Chat be unavailable.

• Private communication between VSHNeers.

Information Classification Level

Internal

Expected response time of VSHNeers

Best-effort.

Mandatory for VSHNeers

Yes, during logged attendance time or when OnCall (VSHN Tech channel only).

Available Groups

• VSHN: Chit-chat channel for all VSHNeers (can be muted). Admin: AarnoAukia

• VSHN Tech: Emergency tech channel. Admin: Tobias Brunner

86

Page 96: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Threema IDs should be scanned by every VSHNeer from everyVSHNeer.

Wiki Page Comments / Git Merge Request Comments

Functionality

• Collaboration on documentation or code, also with partners.

• Discussions in comments.

Information Lifetime

Less than a year

• Can be deleted over time.

Used for

Long-living discussions on a specific topic (for example RFC on a process ordesign draft, or on code)

Information Classification Level

Internal

Expected response time of VSHNeers

Best-effort.

Mandatory for VSHNeers

Yes, be able to search, view and edit documentation / code.

APPUiO Community Chat

Functionality

• APPUiO customer support best-effort.

• Direct or channel chats with Puzzle.

Information Lifetime

Less than 8 hours

• Not really searchable.

87

Page 97: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• No guaranteed history availability.

Used for

• Free best-effort APPUiO customer support (better use tickets)

• Written efficient communication with Puzzle.

Information Classification Level

Public

Expected response time of VSHNeers

Best-effort.

Mandatory for VSHNeers

No.

VSHN Status Page

Functionality

• Inform all subscribers.

• Show status for components.

Information Lifetime

Up to a month

• No guaranteed history availability.

Used for

Announcing planned work, maintenance window and planned or unplannedservice interrupts.

Information Classification Level

Public

Expected response time of VSHNeers

-

88

Page 98: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Mandatory for VSHNeers

No.

APPUiO Status Page

Functionality

• Inform all subscribers.

• Show status for components.

Information Lifetime

Up to a month

• No guaranteed history availability.

Used for

Announcing planned work, maintenance window and planned or unplannedservice interrupts.

Information Classification Level

Public

Expected response time of VSHNeers

-

Mandatory for VSHNeers

No.

Customer specific chat (for example Slack)

Functionality

• Allows efficient communication with the partner (customer)

• Customer can have a lot of users there where we might only need fewusers to join.

• Besides that, similar to our chat.

89

Page 99: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Information Lifetime

Less than 8 hours

• Not really searchable.

• No guaranteed history availability.

Used for

Efficient communication with partners when ticket is too inefficient.

Information Classification Level

Public

Expected response time of VSHNeers

Best-effort.

Mandatory for VSHNeers

No

• Partners know that this is best-effort.

• In urgent cases ticket or phone are the correct channels.

• For communicating with a customer in his Slack channel f.e. during anincident, there is usually a generic account available in the VSHN passwordmanager.

24.2. In-Person Channels

Make sure to document the outcome of any in-person meeting!

Talk

Functionality

Efficient and personal.

Information Lifetime

Up to an hour

90

Page 100: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Except what’s written down.

Used for

• Getting help, discussing things.

• Getting to know a person.

Information Classification Level

Internal

• Depends on involved parties.

Expected response time of VSHNeers

Synchronous, instant.

Mandatory for VSHNeers

Be open to talk and friendly when someone approaches you.

Phone calls

Functionality

Efficient and personal.

Information Lifetime

Up to an hour

• Except what’s written down.

Used for

See "Talk."

Information Classification Level

Internal

Expected response time of VSHNeers

-

91

Page 101: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Mandatory for VSHNeers

-

Forward calls

• For external calls: Telefon extern verbinden

• For internal calls: Telefon intern verbinden

More information about phone calls can be found in the ZoomPhone and How to Answer Phone Calls pages.

Internal Education

Functionality

Spread knowledge and create awareness

Information Lifetime

Up to a month

• Except if it’s based on a Wiki or Handbook Topic.

Used For

• Creating awareness for new processes and technologies

• Refresh awareness on existing processes and technologies

• Spread knowledge about technologies, processes workflows and tools.

• Introdion in to topics.

Mandatory for VSHNeers

Some are.

Meetings

Functionality

• Efficient when moderated or limited number of attendees.

• Please refer to the Meetings section of this handbook.

92

Page 102: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Information Lifetime

Up to two hours

• See "Talk."

• Please take notes.

Used for

• Brainstorming.

• Retros.

• Getting everyone on the same page.

• Meeting partners.

Information Classification Level

Internal

• See "Talk."

• When not using unsafe remote conferencing tools.

Expected response time of VSHNeers

Synchronous, instant

Mandatory for VSHNeers

Yes

• When meeting invites are accepted.

• Meetings marked as mandatory.

Audio / Video Conference

Functionality

• Official tool in VSHN is Zoom.

• Remote audio and video calls.

• Screen sharing for collaboration and presentations.

• More details are documented in the Zoom Guidelines page in thishandbook, and in the wiki.

93

Page 103: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Challenges

• Usually only usable with 3–4 participants.

• Without (good) video: Missing out on non-verbal communication: facialexpressions like smiling/frowning.

• A (working) headset is required to participate. Plain old voice calls (noInternet): Usually bad experience due to low bandwidth combined withcheap headphones beeing used by participants.

Information Lifetime

Up to two hours

• Except when recorded

◦ Not searchable

◦ Not guaranteed

• See "Meetings"

Used for

• Same as Meetings, same rules apply

• Only when In-Person meetings aren’t possible.

• Dial into broken video conferencing tools (Skype for Business, etc)

Information Classification Level

Internal

Expected response time of VSHNeers

Synchronous, instant

Mandatory for VSHNeers

Yes

• When invited to a Zoom meeting, prepare yourself, test the toolbeforehand, and be ready to use it.

• When no other option is available.

94

Page 104: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 25. HeroOpsHeroOps is a planned squad-wide event used by the some squads to improve longterm issues.

Often we must focus on immediately urgent tickets, or on incidents. This causesimprovement tickets in our backlog to be neglected, and sometimes never beingcompleted. With HeroOps we ensure that we can work on those often forgottenimprovement tickets regularly.

25.1. Goals

The goal of HeroOps is to complete 2 improvement tasks per VSHNeer which aren’tnecessary right now, but will save us time in the medium and long term.

In short, HeroOps is our way to reduce technical debt byrefactoring modules that are difficult to maintain.

25.2. Mechanics

When

F.e. the Polaris squad will do a HeroOps day on the second Wednesday of everymonth. Other squads are welcome to come up with their own schedule.

Who

Everyone from the squad will do HeroOps on our HeroOps day. If a majorincident comes up, we will of course handle it. We also will still do first-levelstandard operations on this day.

How

Pick tickets from the backlog which you feel like would be nice improvementsand complete them (within the HeroOps day). Focus on tickets that save ustime in the long term. Set the "HeroOps" label before working on a tasks, so wecan easily review the tickets and make some statistics.

Be careful with tickets not having a realistic estimated time!

95

Page 105: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

25.3. Rules

• Start working on tasks which you feel you can complete within the HeroOpsday.

• Once a tasks is picked (selected and assigned) it’s your responsibility to makesure it will be completed.

◦ This means, should you not be able to complete it on the HeroOps day, itwill be a normal task in your Kanban you’re responsible for.

• Don’t work on tasks not finished on a prior HeroOps day or any other startedtasks.

• Request someone’s opinion if you’re not sure on how big / complicated a taskwill be before picking it.

96

Page 106: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 26. HolidaysSo you have earned your days off! Well done. Before you go to sip those mojitos inthose well deserved holidays, however, please make sure to tick all boxes in thesechecklists.

We love receiving postcards from all over the world! Will yousend us one?

26.1. In General

☐ Submit your timesheets before you go on holiday!

☐ Setup this out of office autoreply for your e-mail account.

☐ In the last squad planning meeting, remind the team that you’ll be away, andfor how long.

☐ Make sure you’re not in any phone rotation during your holiday; if so, findsomeone to take over your shift, and make the required overrides in OpsGenie( OnCall ) or the phone list.

☐ Turn off your computer completely.

Tech Squads

If you are part of a tech squad, please also follow these instructions.

☐ Make sure you’re not having any duty during your holiday; if so find someonewho takes your shift, make overrides in OpsGenie (and if this is unclear, pleasediscuss with current Head of Operations duty).

☐ No unresolved Operations duty tasks assigned to you, talk with Head ofOperations duty.

26.2. On the last day

In General

☐ Smaller tasks should be finished; don’t start any big ones.

☐ Make sure all your issues in Jira are up-to-date: Status, Worklogs, Comments,Due-Date, Priority, relations to other tickets.

97

Page 107: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Current projects

☐ Make sure someone is looking after your tasks in progress. Talk to the SM todiscuss the exact approach!

☐ Write down everything you discussed with customers which isn’t yet in ticketsor the wiki (including deadlines, priorities of tasks, etc.)

The last comment in the ticket should always show what thenext steps are and what’s left to do to complete the task.

☐ Set a downtime on the monitoring-check for your local backup (if you haveone).

☐ Inform the customers that are prone to contact you directly about yourabsence, and tell them who to contact during that time.

☐ Push all your local changes to git.

(Technical) Service Managers

Make sure:

☐ you have a stand-in for each customer, and make sure this person is aware ofthat.

☐ to talk to the stand-in about any running projects and important operationsduty task you know of: Next steps, deadlines, priorities, expectations of thecustomer.

Squad Master

☐ Make sure there is a stand-in defined.

Now you are ready to go! Have a great time!

26.3. Checking your Holidays

If you want to know how many days of holidays you have left, you can follow thesesteps:

• Go to "Leaves Summary" in Odoo.

98

Page 108: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• On the search field on the upper right side, delete the "Type" filter and enteryour name.

◦ You can use the arrow fields to select your name under the "SearchEmployee for" section of the pop-up menu.

• Using the same mechanism, add the "Legal Leaves 2019" filter (under "LeaveType") and "Special Occasions" (also under "Leave Type")

• The current Odoo screen should display your remaining holidays for thecurrent year.

99

Page 109: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 27. Personal EducationProcessThere is an annual educational budget of 4000 CHF per employee, which can beused for personal education in nearly any way. Certification, language school,conferences, it’s up to you to find out what you would like to learn, and how.

To request part of that budget, here are the steps to follow:

1. Talk to your Squad Master about the subject, time frame, and cost of theeducation. Squad Masters give a preliminary approval, required for HR to takea final decision.

2. Write an e-mail to HR with the following information:

◦ Name

◦ Cost

◦ Purpose

◦ Potential benefits for VSHN

◦ Dates and times

3. HR will confirm the approval with the Squad Master, and will consider thebudget and applicability.

4. HR takes a final decision (go / no go) and communicates it to the interestedparties.

If the decision is positive, enjoy the training and learn a lot!

100

Page 110: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 28. Conflict ResolutionProcessOne of the most important objectives of VSHN is to create a great workenvironment. We’re aware, however, that conflicts may arise from time to time.This page provides some guidance as to how to solve those issues in the mostproductive way.

The conflict resolution process is very simple and straightforward:

1. Talk directly to the VSHNeer you have a tension/problem with

2. Discuss tension within squad

3. Talk to PeopleOps

4. Talk to management

28.1. 1. Talk with the Other Person

The first, simplest step for any conflict resolution starts with an open, respectful,frank, and private dialog between the involved parties. Take a moment to discussthe issue at hand, preferably in private, and if preferred, sharing some tea orcoffee. Most problems usually stem from misunderstandings, and the VSHNeerspirit will always appreciate a honest conversation.

28.2. 2. Discuss with Squad

Some issues, however, might spread outside of the private circle of VSHNeers andaffect a whole squad. In that case, gather the involved parties and expose the issueat hand, respectfully and thoroughly. Request your squad master to moderate thediscussion if needed.

28.3. 3. Talk to HR

If all else fails, our PeopleOps will intervene to solve the situation, keeping in mindthe best interests of everyone involved.

101

Page 111: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

28.4. 4. Talk to Management

If the issue persists, it makes sense to involve company management to solve theissue. As a last resort, our CEO might intervene and eventually take a final decisionin the situation.

102

Page 112: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 29. Leave RequestsThis section contains information about how to request holidays, or any other typeof leave request.

29.1. Leave Requests

Every employee has to take two weeks holidays at a time onceper year! The Swiss labour law demands this, in future Antareswill check that this is done!

• Leave requests must be approved by the Squad Master. Only with the approvalof the Squad Master can leave requests be approved.

• The respective holiday quotas are recorded by Antares in the ERP.

• The holiday credits from the previous year are converted into overtime, andcredited individually at the beginning of each year (To be mentionedseparately on the payslip)

• Leave requests must be entered for the current month before the wagepayment, otherwise the payroll will be broken.

• Leave requests can’t be granted subsequently. If you forgot to enter yourholiday and had the day off, it will simply be deducted from your overtime.

Our ERP can’t capture half days; therefore only enter wholedays!

29.2. Public Holidays

• Public Holidays are also recorded by Antares in ERP.

• Since only whole days can be allocated, "Sechseläuten" and "Knabenschiessen"are both recorded as the same single day (not as two separate days, but oneday altogether.)

29.3. Military Service

• Military service can be entered via the request "Military Service."

103

Page 113: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Military service requests don’t have to be approved by HR.

29.4. Special Occasions

• For the days off listed under point 11 in the employment contract (wedding,move etc.), days off must be requested under Human Resources / Leaves /Allocation Requests.

• Please use the leave type "Special Occasions." As soon as the requestednumber of days has been granted by HR, these can be entered as leaverequests.

29.5. Unpaid Leave Requests

• Unpaid holidays must also be applied for in advance.

• Please enter these under Human Resources / Leaves / Allocation Requests anduse the leave type "Unpaid."

• Unpaid leave requests don’t have to be approved by HR.

29.6. Sick Leave and Medical Consultation

• The leave types "Sick Leaves" and "Medical consultation" are deactivatedbecause these absences are recorded in the attendances.

29.7. How to Record Leave Requests

1. Odoo/Human Resources/Leaves/Leave Request → Double click in the calendarat the respective date where you want a day (or more) off.

2. New window opens

◦ Description: Description / Type of vacation

◦ Leave Type: Legal Leaves <YEAR>

◦ Duration: Duration of the vacation

◦ Days: exact number of effective vacation days! Without weekends andpublic holidays

104

Page 114: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

One week vacation = 5 days! Otherwise too many days will betaken from your vacation account. Part-time VSHNeers shouldalso add whole days (exact hours are calculated in thebackground)

29.8. How to Record Sick Leaves and MedicalConsultations

• Doctor visits must be scheduled for off-peak hours or, in thecase of part-time employees, for days off. If this isn’tpossible, the absence must be recorded in the ticket VINT-739 with the note "Doctor’s visit".

• In case of a full-day absence: make sure that the periodcorresponds to your daily working hours, that’s usually 8.5h.

• In the case of a part-day absence: The maximum dailyworking time (8.5h) can’t be exceeded! Someone who workspart-time, for example 80%, can’t write down more than6.8h on that day.

Jira Ticket

Sick leaves and medical consultations must also be recorded on the JIRA ticketVINT-739 Sick Leave (record doctor’s visits with the note "medical visit").

105

Page 115: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Step-by-Step Guide

1. Click on "Create" at the beginning of the absence in ERP under HumanResources / Attendances / Attendances

2. Enter new Attendance with Action = "Sign In" and Action Reason = "Sick Leave/ Medical Consultation

3. Click "Save."

4. At the end of the doctor’s visit, click on "Create" in ERP under HumanResources / Attendances / Attendances

5. Enter new Attendance with Action = "Sign Out" and Action Reason = "SickLeave / Medical Consultation

6. Observe maximum daily working hours!

7. Click "Save."

29.9. How to Record Unpaid Leave Requests

In order to make better weekly planning possible, unpaidabsences (reduction of overtime) of more than 2 days must alsobe entered in the ERP in the future.

1. Odoo/Human Resources/Leaves/Leave Request → Double click in the calendarat the respective date where you want a day (or more) off.

2. New window opens

◦ Description: Description / Type of vacation

◦ Leave Type: Unpaid

◦ Duration: Duration of the vacation

◦ Days: exact number of effective vacation days! Without weekends andpublic holidays

One week vacation = 5 days

106

Page 116: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

107

Page 117: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 30. How to Answer PhoneCallsAnswering phone calls is a skill and an art. Here are some tips and tricks for thosenot used to answering calls in a corporate environment.

30.1. Greeting

There is no second chance for a good first impression. Focus all your attention onthe conversation and be friendly.

Please smile

Smile before you pick up the phone. If you have a smile on your lips, your voice willsound friendlier.

Let it ring twice, but maximum five times

Let the phone ring twice before picking up the receiver. The caller doesn’t expectyou to answer immediately.

Company, your first name and surname, greeting

First state the name of our company, then your first name and surname. The calleroften doesn’t understand the first words correctly. Since he is calling your companyspecifically, he expects the company name to be mentioned. Using your first namehas a personal and friendly effect. You can open the conversation with a "Hello!" a"Good Morning!" or a "Grüezi!"

No empty phrases

At the end of the greeting, don’t use phrases like "What can I do for you?" It’smeaningless and sounds like a switchboard.

30.2. Tips for the conversation

If you have introduced yourself, let the caller have his say. The caller will introducethemselves and state the reason for the call. Listen carefully, request clarificationif you haven’t understood something, and repeat important information back tothe caller for confirmation.

108

Page 118: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Making notes

Take notes during the conversation. Your notes are properly written when you cananswer the following questions:

• Who called? (Name, Company, Phonenumber where he is reachable)

• What was the conversation about? (Ticketnumber?)

• What was agreed? (will he call again or is he expecting a call back from VSHN?)

Remember the name of the caller

Remember both the first name and the last name of the caller. This will look goodin later correspondence. If you don’t understand the name, use the present tensewhen asking: "What’s your name?" Request the caller with an unusual name to spellit.

Academic Degree

If the caller holds an academic degree, please address them as "Herr Doktor Hinz"or "Frau Professor Kunz."

Address the caller by name

Address the caller by name. However, don’t use the name too often, as this will beobtrusive. Two times are sufficient: at the beginning and when saying goodbye. Putthe name at the end of the sentence: "I will send you the information materialtomorrow, Mr. Schuster!"

Transfering calls

When you forward to a colleague, tell the caller the first name and last name of thecolleague to whom you are forwarding. "I’m now connecting you to John Smith,our Python Specialist."

if the colleague you are looking for isn’t available because he orshe is already on the phone or not at their desk, it’s best to leavethe colleague a message via chat, with the name of thecompany, the name of the caller, their phone number and thereason for the call (as already mentioned above.)

109

Page 119: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Formulate positively

Avoid negative formulations and say things positively. Instead of "I’m afraid I don’tknow", it’s better to say "I’ll inform myself and call you back." Instead of saying"Not this week anymore," "Probably next week" sounds much better.

30.3. End of conversation

After the call has been completed, you can politely end the call. You have severaloptions for doing this:

Summarize

Summarize the contents of the conversation again: "May I summarize again? …“

Thank you

Thank the person you’re talking to for calling: "Thanks for the call, I’ve made a noteof everything."

Questions

State a closed question that the caller can only answer yes or no: "Can we stay likethis?"

Assure

Promise the caller that you’ll take care of his request: "Fine, I’ll take care of it rightaway!"

110

Page 120: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Part 2: VSHNeer Roles

At VSHN we all have distinct responsibilities, all explained in this part of thehandbook.

111

Page 121: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 31. VSHNeer RolesRoles define who is responsible for what (or who) on a high level - A role definitionisn’t the "How-To" (… be a Squad Master) instead it defines the duties andresponsibilities, the duration, scope and boundaries between other roles.

• Carrying a role includes the learning process to get into the role, teachingothers in that role and sharing your knowledge and experience with otherVSHNeers carrying the same role

• Take your time to get into a role and do what needs to be done - some rolescan take most of your time (which is okay).

31.1. Role assignement

A VSHNeer has a main role, e.g.: For techies this is usually the Engineer role.Additionally f.e. to develop you skills further you can start carrying other roles likeProject Manager, Product Owner or Service Manager.

• Some roles are bound to a squad, e.g:

◦ An Accountant or PeopleOps VSHNeer is most likely in Antares and not ina tech squad

◦ A Customer Success Manager is usually in the Sol squad and not in a techsquad

• We also hire people to be Project Manager or Service Manger as their mainroles

• It might be necessary to push roles like the Service Manager (per customer) tosquad members

Roles are usually assigned on request. If there is an interest getting into a newmain role or carrying an additional role this must be discussed with the squad andother VSHNeers carrying the specific role. Ultimately the management decidesabout role assignements as it can have implications on the work contract.

31.2. Lifetime of a role

• Some roles are permanent until further notice, e.g.: Squad Master

• Other roles are temporary, e.g: Project Manger (ends with the project)

112

Page 122: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Some of the roles are "multi-instance," means you can be Project Manager(temporary) for more than one project or being the Service Manager for manycustomer (permanent).

31.3. Scope of a role

The scope of a role is explicitly defined. A VSHNeer having multiple roles is fine,but a role never implies having other roles or being responsible of other roles'duties.

• When something is out-of-scope of a role, it doesn’t imply you don’t do thosethings, e.g.:

◦ A Squad Master isn’t there to refine bad tickets, but when you are also theService Manager for a customer you do refine tickets for your customer

◦ On the other hand you don’t do ticket refinement for any customer of thesquad only because you are the Squad Master or the Service Manager fora specific customer

• If you see something that needs attention but isn’t in the scope of your role(s)find and ping the correct person

• When unclear at some point, whether something is in the scope of the role ornot, discuss it in #orgdev chat channel and update the definition

31.4. Communication and co-operationbetween roles

113

Page 123: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

114

Page 124: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 32. Chief InformationSecurity Officer (CISO)The Chief Information Security Officer (CISO) is the main responsible role for theinformation security at VSHN.

Duties

Own (be responsible for)

• The overall responsibility of information security and its InformationSecurity Management System (ISMS).

Be

• Strategically and tactically responsible for the information security inVSHN.

• Responsible of maintaining and monitoring the ISMS.

• The go-to person for customer’s questions about information security.

Define

• Policies regarding information security.

• Processes to identify and mitigate information security threats.

Plan

• Awareness training, and general ISMS education sessions.

• Audits regarding the ISO 27001 certification.

• Audits regarding the ISAE 3402 report.

• Weekly ISMS meetings.

Coordinate

• Reporting of the state of information security to the management.

• Tickets regarding information security with all squads.

• Handling of information security incidents and threats.

115

Page 125: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Control

• All processes in ISMS (for example, information security process).

• The company’s risk management system.

Out of Scope

A CISO isn’t:

• The role necessarily working on the technical implementations of securitymeasures.

• The legal and compliance department of the company.

• Part of the management team.

Requirements

The role is appointed by management. The CISO should have:

• A degree or apprenticeship in computer science.

◦ Alternatively, equivalent professional experience.

• Knowledge in ISO 27001/27002 standards.

• Experience in the development and operation of the IT systems to be certified.

• Experience in risk assessment and risk management.

Missing competences or experience can be provided by anexternal consultant.

116

Page 126: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 33. Customer SuccessManagerThe Customer Success Manager is responsible for a successful businessrelationship. They’re the ongoing partner contact for all commercial matters likeoffers, contracts, invoices and feedback and promote retention and loyalty.

In German: Der Customer Success Manager ist verantwortlich für eine erfolgreicheGeschäftsbeziehung. Er/Sie ist die Hauptansprechsperson für alle geschäftlichenAngelegenheiten wie Angebote, Verträge, Rechnungen und Feedback und förderteine gute Partnerschaft und Loyalität. 

Duties

Own (be responsible for)

• Ongoing communication with the business decision makers on thecustomer side.

• Planning and execution of regular meetings to ensure that the customer ishappy with the service(s) provided. 

• Customer contracts and legal requirements.

Coordinate

• With Sales and Presales Engineering for new customers

• With Service Managers and Project Managers for ongoing projects/tasks.

• With Support for technical questions from customers

• With Accounting for financial/invoicing questions from customers

Overview

• Overview of all projects running and planned (or in sales pipeline) for thisspecific customer.

Support

• Service Manager and Project Managers with business requirements such ascontracts, billing, etc.

Out of Scope

117

Page 127: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

A Customer Success Manager isn’t:

• A project manager for the customer. See Project Manager

• The one having technical knowledge of the platform or services of thecustomer. See Service Manager

• Working on engineering tasks for the customer.

• Answering technical questions.

118

Page 128: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 34. PeopleOpsVSHN PeopleOps (HR) is responsible for all tasks and duties that help makingVSHN a great place to work.

Responsibilities and Accountability

• Driver of alignment between employee satisfaction and businessrequirements.

Decisions

• Education budget expenses approvals.

• Hardware budget management.

• Approval of expense requests.

Duties

These are some of the duties of the PeopleOps role:

Staff Administration

On demand:

• Get in touch with new employees ahead of their first day.

• Order hardware.

• Social insurances (Military Services / EO / FAK)

• Address changes.

Onboarding:

• Request and file debt collection register and criminal records statement.

• Send Employee information sheet.

• Send VSHN Handbook link.

• Check Permissions.

119

Page 129: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Registration SVA (AHV)

• Registration BVG via AXA Portal.

• Create ticket for end of probation.

• If the employees isn’t a Swiss national:

◦ Withholding tax.

◦ Permission Check.

◦ Authority registration.

• Hand out form "Summary sheet" from AXA pension fund.

• If not married, hand out form "confirmation of partnership" from AXA pensionfund.

• Provide information about our insurance broker "Esurance."

ERP:

• Create ERP user.

• Record legal leaves and public holidays.

• Hand over the key, get the receipt signed.

Offboarding

• Establish certificate of employment.

• Prepare debriefing.

• Prepare all needed informations about insurances (BVG, accidents)

• Inform about NDA.

• Calculate and pay overtime and OnCall.

• Release laptop in case the person keeps it.

◦ Calculate the price for laptop.

• Ensure the employee signs the "return of company property" form.

• Receive office key, sign key receipt.

• Control inventory.

120

Page 130: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Unsubscribe from BVG.

• Unsubscribe from SVA, if employee got child support.

• Decommission ERP contract.

• Deactivate in ERP.

• Transfer personnel files to archive in shared folder.

• Update contact dates employees in Wiki.

Weekly:

• Timesheet control.

Monthly:

• Timesheet control.

• Over/Undertime control.

• Send payslips to staff.

Yearly:

• Request and file debt collection register and criminal records.

• Yearly Reviews with employees (planned)

• Set up holidays.

• Check hardware and education budgets.

Finance

• Salary payments and payslips.

• Expenses.

• Special Salaries (sales / OnCall)

• SBB Half Fare Travelcards.

Employee Satisfaction

• Answering all questions about how to be a VSHNeer.

121

Page 131: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Deal with authorities (new hires, expats, military, appartement rentals)

• Order swag for new hires.

122

Page 132: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 35. Management MemberVSHNeers having this role form the Management.

The guiding principle of this role is "Leading by example."

Duties

Participate

• and vote in Management meetings (usually weekly)

• in the #gl (management) chat channel

• actively in the OrgDev Chapter

Decide

• within the scope of the Management

• as a tiebreaker when decisions can not be made in another way (squad,chapter and other roles)

Support

the People Chapter

Escalation point

• for VSHNeers when the Conflict Resolution Process doesn’t bring theintended outcome

• for customers and partners via the Service Manager as a last resort

Lead

by example while adhering to our Values

Requirements

The CEO is appointed by the board, management members are appointed by theCEO. To be a member of the management, the CEO evaluates the correspondingapplication together with the current management.

123

Page 133: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 36. MentorA Mentor is a senior VSHNeer helping a new VSHNeer to get into VSHN, and learneverything about VSHN.

Duties

Own (be responsible for)

The new VSHNeer.

Be

The primary contact person for the new VSHNeer.

Define

Introductory program for the new VSHNeer.

Plan

• Execution of introductory program.

• Regular catch-up with new VSHNeer (daily get together or as it fits).

• Trial period meetings with the new VSHNeer and the Squad Master.

Coordinate

Education, to teach all about VSHN to the new VSHNeer:

• What does VSHN do?

• What are the different Squads doing?

• How to work with Jira and how to create tasks?

• How to do attendance tracking in Odoo?

• How to do worklogs?

• When do all the regular meetings happen, and what meetings areavailable?

• Where to find the best food in town?

• When and where to get beers with other VSHNeers?

• Where are all the things located in the VSHN office?

124

Page 134: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Control

• Execution of introductory program.

• Progress of new VSHNeer.

Out of Scope

Probationary period talks

Do the regular talks during the probationary period. That’s the task of theSquad Master.

Technical help

Getting help on the day-to-day work is the responsibility of the Squad.

Requirements

Teaching the "VSHN way" needs some good practical experience working at VSHN.Being a mentor is only possible after being a VSHNeer for more than a year.

Being a mentor carries some duties (see above). This shouldn’t be taken lightly, andit must be carried out carefully. It helps new VSHNeers a lot to get help from a realVSHNeer.

It makes sense for the Mentor to be from the same Squad, but it’s not a strictrequirement. It’s more important for the mentor to be able to really teach aboutthe "VSHN way."

125

Page 135: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 37. Product Owner• Product owners coordinate all efforts to define, develop and maintain a

product.

• Knows a product in all its details: functionality, limitations, and dependencies.

• Is interested in the underlying technology and keeps up-to-date with currentupstream development.

Duties

Own (be responsible for)

• A specific product.

• Projects to kickoff, maintain, improve or extend the product.

Coordinate

• Creation and changes of the product definition, also with Product Ownersof other (dependent) products.

• Pricing, together with Sales and Marketing (VSHN Product Management).

• Partner connections (for example Red Hat, MariaDB, Rancher, etc.) andupstream support.

• Projects to improve the product.

• Technical (design) decisions (usually for Changes), align with other(dependent) products.

• With Service Managers of customers which are using a product

Evaluate

• Technical changes.

• Features and requirements (what do customers need, what do we need).

Manage

• Product development, backlog and roadmap.

• Lifecycle of the product and underlying technology.

126

Page 136: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Support

• Inside sales, in creating and updating product sheets and products in ourERP.

• Sales (especially the pre-sales engineer for a specific lead) when theproduct is part of a potential project.

Out of Scope

A Product Owner isn’t:

• The role actually working on the technical implementations or operations, bugfixes or setup (service activation) of the product.

• Responsible for incidents affecting or caused by the product.

127

Page 137: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 38. Project ManagerProject managers are a temporary role for one specific project:

• Make sure the project is a success and deadlines are met.

• Be there for the customer or stakeholder for any questions or issues duringthe project phase.

• Ensure a smooth transition at the end of the project into productionoperations.

Duties

Own (be responsible for)

• The project.

Be

• The single point of contact for the customer or internal stakeholder.

• Escalation point for change of scope, billing issues, resource problems,etc.

Define

• Requirements: with pre-sales engineer and customer.

• Requirements: with product manager and product owner.

• Scope and definition of done.

Plan

• JIRA project.

• Milestones and work-packages.

• React on scope changes in an agile way while keeping customer andstakeholders in the loop.

Coordinate

• Milestones and timeline with customer.

• Resources with Squadmasters, represent the projects in all involvedsquads.

128

Page 138: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Control

• Logged and billable hours.

• Monthly invoice controlling of project hours.

Out of Scope

A Project Manager isn’t:

• The role necessarily working on the technical implementations in the project.

• Responsible for the customer or setup once the project is done (see ServiceManager).

129

Page 139: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 39. Service ManagerThe Service Manager is the person knowing the customer personally (bothtechnical and non technical staff) and technically (requirements, platform andservices), as required to become the person at VSHN who knows the customerbest. Their main responsibilities include knowing what’s currently going on,refining unclear requests, and coordinating tasks.

Duties

Be

• The person at VSHN who knows the customer best, available for generalrequests or as an escalation level.

Coordinate

• With all involved Squads.

• With Project Managers and Product Owners.

• Incident management.

• Knowledge transfer and design decisions, for example:

◦ Connect the correct engineers to solve a problem.

◦ Ensure technical knowledge distribution, VSHN-wide.

Overview

• Of all projects, running and planned, for a specific customer.

• Of who is working on what (on a high level).

Manage

• Priorities, together with the customer, for example sorting out "nice-to-haves" in favor of solving problems, to prevent future incidents.

• Changes together with the customer and internal stakeholders.

• Project vs other tasks priorities.

Ensure

• Platform and service documentation is up to date; effort coordination forfix where needed.

130

Page 140: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Customer contacts (focused on projects and operations) are up to date inour documentation (ERP).

Refine

• Unclear customer tickets (should Triage not be able to do so).

Support

• Project Managers with current projects (coordination with existingservices, for example).

• Sales (new projects or services for existing customer).

• Engineers, with specific knowledge.

Control

• Monthly invoices (billable hours), except hours coming from projects (thisis the project managers' duty).

Out of Scope

A Service Manager isn’t:

• The de facto project manager for new projects of this customer.

• The one solving incidents or writing incident reports.

• Owner of technical customer tasks (with exception of non-technical internalreview, once a task is complete).

131

Page 141: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 40. Squad Master• The servant leader for the squad, enabling the squad to be efficient and

happy.

• Communicate what problem needs to be solved and why.

• Make sure squad members have everything they need to work.

Duties

Moderate

• In squad internal issues (also act as a tie-breaker for decisions).

• Leave requests (decisions are made in the squad).

• Duty and shift planning (for example weekly Maintenance, Altair shifts,etc.).

Coordinate

• With other Squads, for example in Squad Master and Service Managermeetings.

• With project, product and service managers.

• Knowledge transfer and design decisions, for example to connect thecorrect engineers to solve a problem.

• Recruiting needs, so we find new people for the squad.

Overview

• Of all projects within the squad (on a high level, not on the ticket level).

• Of who is working on what (on a high level).

Escalation point

• For squad members in personal matters.

• Resource problems or conflicts.

Plan

• The time availability forecast.

• How to fit in planned projects.

132

Page 142: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Retros and planning meetings, can but doesn’t have to facilitate them.

Coach

• And help how to improve personal workflow, efficiency and focus.

Support

• The Mentor of new VSHNeers in trial period meetings and assessments.

Out of Scope

A Squad master isn’t:

• Asking technical questions or taking design decisions. They can pointcustomers in the right direction or connect with engineers that could help.

• Refining "bad" tickets. This is the duty of the Project Manager, Triage, or thecreator of the ticket instead.

• Keeping an overview of individual tickets.

• The Project Manager if there is none for a project.

• The Service Manager or Relationship Manager if there is none.

• The boss of the Squad (see Wikipedia - Primus inter pares).

133

Page 143: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 41. Technical ServiceManagerVSHN has customers of different organizational and technical complexity. Forsome customers it’s best to have only a Service Manager which can cover alltechnical aspects, while for others the organizational aspects of the ServiceManager role can be quite intensive, might require special skills, and a bigger timebudget. For those cases it makes sense to split the technical part into a separateTechnical Service Manager role, carried by another person.

The Technical Service Manager is an additional role to the Service Manager forsome customers. The Service Manager acts on a higher (organizational) level only,and doesn’t need to know the setup of a customer in technical detail.

This role knows the customer personally (usually technical staff) and technically(requirements, platform and services) to act as the tech lead internally and for thecustomer for technical decisions, help with triage, etc. The main responsibility ofthis role is to have an overview of the overall technical setup, and to know howchanges and projects can impact the existing situation.

For customers with a Technical Service Manager, any technical duties shift fromService Manager to this role–but this always happens through coordination andcommittment between the Service Manager and the Technical Service Manager.

Duties

Be

• The tech lead for the services VSHN is responsible for the customer.

• The VSHN internal tech lead for technical questions, help with triage andincidents.

Coordinate

• With the Service Manager.

• With Project Managers and Product Owners.

• Knowledge transfer and design decisions, for example:

◦ Liaise with the relevant engineers to solve a problem

◦ Ensure technical knowledge distribution, VSHN-wide

134

Page 144: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Incident handling.

Overview

• Of the technical impact of projects and changes to the existing setup andservice quality.

Ensure

• Platform and service documentation is up to date; coordinate effort to fixwhere needed.

• Customer contacts (focused on projects and operations) are up to date inour documentation (ERP).

Refine

• Unclear customer tickets (should Triage not be able to do so).

Support

• Managing priorities and changes together with the Service Manager, forexample sorting out "nice-to-haves" in favor of solving problems toprevent future incidents.

• Project Managers with current projects (give technical advice, work outconcepts, etc.).

• Sales (new projects or services for existing customer, help with technicalconcepts during pre-sales).

• Other engineers with knowledge.

Out of Scope

A Technical Service Manager isn’t:

• Automatically the project manager for new projects for the customer.

• Implicitly the one solving incidents or writing incident reports.

• The role controlling monthly invoicing.

• The role coordinating contract or pricing related matters.

135

Page 145: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Part 3: Tools

At VSHN we use different tools for our day-to-day work. This part of the Handbookcontains all the information you need to access and configure the most commonones.

136

Page 146: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 42. DocumentationComprehensive, precise, and up-to-date documentation is at the very core of ouractivity. It helps us to collaborate with each other, and it helps our customers aswell. At VSHN we’ve an extensive documentation strategy, and this section of thehandbook explains it in detail.

42.1. Tools We Use

There are various tools we use to document our work.

• VSHN Handbook: this very document!

• VSHN wiki.

• Git projects (through README, CONTRIBUTING, CHANGELOG files, etc)

• Jira tickets, where we document all of our activities in detail.

42.2. Handbook

The VSHN Handbook is the document you are currently reading. It documents howVSHN works and how we at VSHN work. It’s geared towards new employees, itserves the purpose of telling potential new hires about us. But it’s also a referencefor active VSHNeers to read about VSHN whenever needed, to help have a self-informed live at any VSHN-day and to document any changes or improvements.

The handbook doesn’t contain any confidential or customer specific information,and is therefore meant to be public.

Handbook vs Other Documentation

The following table describes the major differences between the Handbook andother types of documentation.

Handbook Wiki

Stability Stable, carefully reviewedchanges

Dynamic, a lot of changes andcollaboration

Who is it for For new and prospective hires,for active VSHNeers: eventuallyfor the public

For active VSHNeers, VSHNcustomers and VSHN partners

History yes, via git yes, via page history

137

Page 147: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Handbook Wiki

internal content no yes

confidential content no yes

customer specific content no yes

Examples Your first day at VSHN How you setup your vshn.ch e-mail address

How Squad and Chapters work Squad shift scheduling table

What the VSHNday is Meeting notes from the VSHNday

42.3. Confluence Wiki

Internal or confidential information is documented in the Atlassian ConfluenceVSHN wiki.

If you use Firefox you can add the Confluence and Jira searchengine to your "One-Click Search Engines" list by clicking the[…] button on the location bar. Then, in about:preferences#searchyou can assign a keyword to it, for faster searches.

Customer Spaces

Each VSHN customer gets its own Space in our wiki. Access can be granted for thecustomer users to access their space.

• Space Name: Customer: <customername>

◦ 00-OnCall: Contains relevant information for 24/7 OnCall technicians.Exists only, if the customer has a 24/7 support SLA

◦ 01 Services: Overview over all services we’re operating for the customerwith a tight focus on anything the is customized/different from ourstandard setups and products

138

Page 148: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

▪ <Service A>: Managed GitLab

▪ <Platform B>

▪ DB Servers

▪ Load balancers

▪ Monitoring checks

◦ 02 Meeting notes:

▪ <2019–05–10 Meeting bla blah blah> (use meeting notes template!)

◦ 03 HowTo articles: No further structure, just single pages per how-toarticle, use tags!

◦ 12 Projects: Running projects (done or closed projects are archived andrelevant information moved to How-to articles and Services

◦ 13 Incident reports:

▪ <2019–05–10 xyz incident postmortem>

Chapters

Each VSHN chapter gets it’s own wiki space. There is no given structure, dowhatever works for you.

• Space Name: VSHN <Chaptername> Chapter

• Space Key: V<first 2 chars of chaptername>C

Rules

As soon something has value for not only the Chapter, it must be documented in a"global" Wiki space (or maybe the handbook). See Squad below for examples.

Squads

Each VSHN squad gets it’s own wiki space. There is no given structure, do whateverworks for you.

• Space Name: VSHN <Squadname> Squad

• Space Key: V<first 2 chars of chaptername>Q

139

Page 149: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Rules

As soon something has value for not only the Squad, it must be documented in a"global" Wiki space (or maybe the handbook).

Some examples on what’s a good and a bad idea to keep inside the squad space:

Good:

• How this particular Squad works, how to work together

• Squad shift planning tables and stuff like that

• Squad internal organization (projects)

• Meeting notes (name them <year>-<month>-<day> …)

• Retro notes (name them <year>-<month>-<day> …)

Bad:

• How-tos that also have value for other squads (for example, a technical guideon how to setup something)

• Workflows that also affect other squads (for example, how we hand overtickets to another squad, etc.)

Backoffice

Finance, PeopleOps, monthly invoice controlling, etc.

• Space Name: VSHN Backoffice

• Space Key: VBO

Business

Contains short lived or frequently updated organizational stuff that doesn’t fit intothe Handbook, for example, Meeting notes, current projects, how-to articles

• Space Name: VSHN Business

◦ 02 Meetings (Meeting notes)

◦ 03 How-to articles (should mostly go into Handbook)

140

Page 150: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

◦ 12 Projects (non tech projects, for example, "New Documentationstructure")

◦ 13 Research

• Space Key: VINT

Technical

Contains short lived or frequently updated organizational stuff that doesn’t fit intothe Handbook, for example, Meeting notes, current projects, how-to articles,maintenance logs, Research, etc.

• Space Name: VSHN Technical

◦ 03 How-to articles

◦ 12 Projects (non customer specific tech projects)

◦ 13 Research

◦ Maintenance Logs

• Space Key: VT

42.4. Git & GitLab

Code (Apps, Tools, Ansible playbooks and roles, Puppet profiles and modules, etc.)are documented within the same git project, usually in a README written inMarkdown or Asciidoc.

42.5. Jira

Our ticket system is based on Atlassian Jira. There is a whole chapter in thishandbook on How we use Jira.

Regarding documentation it’s important to say that we document everythingrelated to a specific task, problem or incident directly in the ticket but link relatedtickets, wiki pages, etc. to the ticket.

For incidents, usually a incident report is is written in the wiki based on theinformation in the ticket gathered during debugging an analysis.

141

Page 151: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 43. JiraJira is a very important tool at VSHN. We track everything in Jira, including internalevents, trainings, meetings and many other things. Getting used to how Jira worksis a very important part of your daily life as a VSHNeer.

Our Jira is available from ticket.vshn.net.

43.1. Useful Jira Chores for Booking Your Time

At VSHN we use Jira to keep traces of all of our activities, including those thatdon’t belong to a project. Use the tickets below to track your time according toyour workweek.

Task Ticket

Daily Standup VINT-1849

Personal management 2.0 VINT-1986

Informal Meetings VINT-1993

Mail Cleanup VINT-1959

Monitoring Operations VSHNOPS-2313

Office Maintenance VINT-806

Personal Workstation Maintenance VINT-1717

Sick Leave VINT-739

Ticket Triage VSHNOPS-2312

Timesheet tasks VINT-2035

Weekly Teammeeting VINT-1708

Squad Planning VINT-1837

Squad Retrospectives VINT-1836

Handbook Maintenance VINT-1321

Wiki Maintenance VINT-1446

There are other, similar tickets that you might use, depending onyour squad; for example, the Capella Squad uses ticket VINT-1033 to track time for their Planning and Backlog Refinementmeetings. Inquire your lead for those of your own squad!

142

Page 152: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

43.2. Project and Taskplanning

We use issue linking to link task and project management together ("blocks" and"blocked by"):

• Each customer gets a Jira project called "Customer: NAME," with an ID that’scomposed of three or four characters, easily associated to the name.

◦ Project Lead: Customer Account Manager (CAM)

• In a Customer Jira Project, there is at least one issue of type "Operations."

• This is used for ongoing operations and customer requests, which aren’t tiedto a specific project.

• A Customer Project is planned in the issue type "Project." There is a "CustomerProject" template available, which adds a boilerplate with all information andquestions needed.

• Real work gets done in "Task" or "Chore" issue types.

If you use Firefox you can add the Jira search engine to your"One-Click Search Engines" list by clicking the […] button on thelocation bar. Then, in about:preferences#search you can assign akeyword to it, for faster searches.

Issue Types for Project Management

• A Jira Project (aka Customer) can have one or more "Project"

• A Project can have zero or more "Project Milestone" (it really only makessense to use milestones if there is more than one milestone) and zero or more"Task" and "Chore"

• A Project Milestone can have one ore more "Task"

• A Operations can have one or more "Task" and "Chore"

143

Page 153: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Issue Type Usage Roles

The container holding differentissue types together. Alsocontains the overall definitionof the scope, stakeholders, etc.

When a project has nomilestones, this is the flightlevel on which we plan "VSHNwide" projects and timelineplanning

Reporter: The main stakeholderAssignee: Project Manager

A milestone is a specific point intime within a project lifecycle,used as signal posts for: aproject’s start or end date, aneed for external review orinput, a need for budget checks,submission of a majordeliverable, etc. Milestones havea fixed (due) date.

Reporter: The main stakeholderAssignee: Project Manager

Used to group differentcategories of work or serviceson the customer side; not usedin project management.

Reporter: Service ManagerAssignee: Service Manager orTechnical Service Manager

Issue Types for Task Management

A Task or a Chore must block exactly one Project Milestone, a Project or anOperation.

Issue Type Usage Roles

A request from a customer. Willbe triaged (assessed andassigned) by the ticket TriageProcess.

Reporter: CustomerAssignee: None

Tasks, of a Project, a Milestone,or Operations. This is where theactual work is done.

Reporter: undefined, usuallythe creatorAssignee: VSHNeer working orplanning to work on this issue

A recurring task (like meetings,project management, dailyoperations, etc.)

Reporter: Project Manager orService ManagerAssignee: Responsible person

144

Page 154: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

If you encounter an error in one of VSHN’s own services (Mail,GitLab, etc.) please don’t open a ticket in the VT space, but ratherin the VSHNOPS space, and don’t forget to use the correspondingtemplate. This helps the corresponding squad (usually Polaris) tosolve the issue faster and better.

Issue Blocking Rules

Different issue types can only block other specific issue types. The followingdiagram shows who can block whom.

Task Management

Project Management

Chore

Project Operations

Milestone

Jira Project

RequestTask

43.3. Jira Workflow

145

Page 155: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

This workflow applies mainly to technical tickets and ticketsfrom tech squads. Other areas like Recruiting, Backoffice, etc.might have other workflows.

Task states

In use by the following issue types: Task, Request.

State Meaning Notes

New Needs to be triaged by 1st Ops.

Backlog Kanban Backlog, will be refinedby the "Backlog refinement" inSquads and Chapters and thenselected by Squads. Usually noturgent tasks start in theBacklog.

Selected Chosen by a Squad to work onnext, Urgent tasks (for example,Incidents and changes) may alsogo directly to Selected.

In Progress Is currently worked on byAssignee

146

Page 156: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

State Meaning Notes

Waiting Already worked on the task butcurrently on hold, for example,Engineer has to stop workingbecause of a more urgent issue,or ticket was automaticallytransitions from "Waiting forCustomer" or "Waiting for ThirdParty" and the engineer willwork on this again soon.

Waiting for Third Party More specific than waiting, thatmeans a third party likeupstream or support is blockingthe continuation

This state does not includewaiting on the customer

Waiting for Customer We can’t work on this task as wethe customer needs to dosomething first (test, givefeedback, answer a question)but the task isn’t considereddone from our side yet.

Waiting for Internal Feedback Task isn’t finished but waits fora VSHN internal feedbackbefore it can be continued (codereview, …)

Do not change the assignee, butmention the one you’re waitingfor

Waiting for Maintenance Everything is prepared and thenext step in the task needs tobe done during a plannedmaintenance window (forexample, weekly maintenancewindow).

Missing Information The issue needs moreinformation before it can betriaged or the ticket quality is inan unusable state. Mostly usedduring triage by 1st Ops.

Internal Review The issue is done (all taskdeliverables completed) andshould be reviewed by a workmate before closing.

Change assignee to reviewer

Customer Review The issue is finished (all taskdeliverables completed, internalreview done where feasible) andthe customer informed, waitingfor customers feedback.

When no feedback fromcustomer, close issue after 1week

147

Page 157: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

State Meaning Notes

Done Finished. Nothing can be doneanymore on this issue. Ifsomething pops up afterputting an issue in the Donestate, a new issue needs to becreated

To view the current active workflow, click on "(View Workflow)"next to the "Status" field

Transitions

Some transitions have special requirements.

Transition Requirement

In Progress → Waiting Write a comment why the issue is now in waitingstate

In Progress → Waiting for Third Party Write a comment why the issue is now in waitingfor Third Party state and who you are waiting for

In Progress → Waiting for Customer Write a comment that clearly says what weexpect from the customer, for example, "Pleasetest X," "Please show me how to reproduce this,"etc.

Chore States

In use by the following Issue types: Chore, Operations

State Meaning

Running This issue is handled and can be worked on

On Hold Currently nothing should be done here

Closed Contract has ended

Project states

In use by the following Issue types: Project, Project Milestone

State Meaning

New Sales process is completed (Project Initialization)or conditions are set to define a new internalproject. The project is being defined.

148

Page 158: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

State Meaning

Backlog The project is defined but there is no need toplan the project yet, for example: no immediateneed, no due-date, focus lies on other projects

In Planning Project is currently being planned - not workshould be done now

On Hold Project was in progress but is now paused.

Running Project is running

Review All task and deliverables are done or handled,and the project is in review (internally or with thecustomer).

Closed Project is done. There are no further actionstaking place.

43.4. Project and Operations Reporting

There are some custom fields available which help with Project and Operationsreporting.

Operations and Chores

Field Usage

Total logged time (h) Sums all logged work of issue links of type "isblocked by." Or in case of a Chore, all loggedtime in this Chore

Monthly Budget (h) Hours which can be spent on this Chore /Operations per month (editable field)

Mt Budget Used (%) Percentage of "Mt Budget Used (h)" vs. "MonthlyBudget (h)" of the current issue

Mt Budget Used (h) Sums all logged work of issue links of type "isblocked by" from the current month. Or in caseof a Chore, all logged time in this Chore from thecurrent month.

JQL Example - Budget more than 90% used

(issuetype = Operations OR issuetype = Chore) AND status = Running AND "Mt Budget Used(%)" >= 90

Projects

149

Page 159: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Field Usage

Work remaining (h) Sums all remaining estimates of issue links oftype "is blocked by" and state not Done

Total logged time (h) Sums all logged work of issue links of type "isblocked by"

Estimation vs. Actual (%) Percentage of "Total logged time (h)" vs. OriginalEstimate of the current issue

JQL Example - Project Estimation at 90% used or more

(issuetype = Project AND status = Running) and "Estimation vs. Actual (%)" >= 90

43.5. Labels

We use labels to tag issues. This makes it easier to tie similar issues over the wholeJIRA together. Here is a list of known labels and their intentional use.

Label Use Special Use

Support Internal or customer (technical)question, nothing is broken andit’s not an order to changesomething (yet)

Used in filters to identify anOperations issue

GL Issues which have been createdduring GL Meetings.

Incident Something is broken, Host orService down and the user /customer is affected / blocked

Used in filters to identify anOperations issue

Problem Something is broken or not as itshould be. The customer / userisn’t blocked. Potential reasonof a past or future incident, canbe a follow-up from an Incident

Used in filters to identify anOperations issue

Change Something needs to be created,added, changed and isn’t bigenough for a Project / SquadTask

Used in filters to identify anOperations issue

Obsolete Labels

• Responsible Ops

• Improvement

• AppDev

150

Page 160: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• SRE

• and many more

Obsolete Labels should be removed and must not be usedanymore!

151

Page 161: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 44. Work LogsSince we use Jira to track nearly everything, including invoiceable work, we mustapply a few best practices to write Work Logs so that we can properly invoice themto our customers whenever required.

44.1. Rules

Please follow these rules when tracking your time in Jira tasks:

• Work logs are only allowed on Tasks and Chore issue types.

• As we bill in slots 15 minutes long, the "Time Spent" must be filled in 15minute steps (that means, not lower than 15 minutes for tasks)

• A "Work Description" must always be entered. It should be as short anddescriptive as possible.

The Work Description appears on the customers invoice (even ifnon-billable)!

44.2. Work Description

As the work description ends on the customer invoice, it needs to be carefullycrafted. Think of the following sentence and finish it:

With this worklog I have …

Good Examples

These are fictional!

• "Upgraded JIRA to version 7.8.0"

• "Configured Apache to support .htaccess"

• "Added a new OpenShift Node node25"

• "Decommissioned VM"

152

Page 162: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Bad Examples

These are fictional!

• "Helped Peter Muster to solve the issue and talked a bit about it"

• "Discuss"

• (empty work description)

• Really long sentence, like "Nostrud reprehenderit anim amet proident dolorpariatur adipisicing adipisicing deserunt officia elit duis Lorem. Deseruntexcepteur anim aliquip et. Et dolor officia esse deserunt incididuntexercitation consectetur velit reprehenderit ullamco velit id mollit incididunt.Mollit occaecat sunt sunt ullamco minim sunt. Velit cillum duis occaecat laboriscupidatat dolore non culpa nostrud. Reprehenderit sint sit do tempor sint. Undso weiter."

• Explicitly mentioning users.

44.3. Keywords

We use several keywords in front of a Work Description which is used by JOSY totreat work logs differently. Just put the keyword in capital letters in front of theworklog with a blank between.

Example

B247 Rolled out the new version 12.42 of GitLab in maintenance window

These are the keywords currently in use:

Keyword Use

B Sets the field "Invoiceable" in Odoo to "Yes(0918)"

NB Sets the field "Invoiceable" in Odoo to "No"

B247 Sets the field "Invoiceable" in Odoo to "Yes(24/7)"

Pay attention to the following tips:

• If no keyword is given, JOSY doesn’t do anything in Odoo and Odoo uses thedefault value for the contract. So normally no keyword needs to be given.

153

Page 163: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• The keyword gets stripped away from the Work Description.

154

Page 164: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 45. MailMail is an important tool of communication, even though in VSHN it’s primarilygeared towards "the outside world;" internally we prefer using our chat system.We do however use our calendars extensively, and usually every squad has its owncalendar exposed, so you can be notified of meetings and special events.

45.1. Webmail

We use SOGo Groupware as our mail and calendar provider. You can use the webinterface to read your mail and browse calendars. * Your username isfirstname.lastname

45.2. Using a Mail Client

You can use your preferred mail client as well.

Recommended Mail Clients

• Linux:

◦ Thunderbird with Lightning

◦ Evolution

• Mac:

◦ Apple Mail

◦ Airmail

• Windows:

◦ MS Outlook via ActiveSync

• Android:

◦ K-9 Mail and DAVx5 (CalDAV and CardDAV sync)

◦ Outlook via ActiveSync.

• iOS:

◦ Default Mail & Calendar apps

◦ Outlook via ActiveSync

155

Page 165: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Setup

These are the settings you need for that:

• Your email address is [email protected]

• Your username is [email protected]

• IMAP (receiving): imap.vshn.net, SSL/TLS on port 993

• SMTP (sending): smtp.vshn.net, STARTTLS on port 587 (requiresauthentication)

• In Evolution, in the Account Editor, select "Server requires authentication" andthen select "Login" as the type of the authentication. You will be prompted foryour password on first connection.

• Create a GPG key and publish it to a key server.

You can perform these steps with Enigmail for Thunderbird or GPG Suite on theMac. And of course you can use your keys with Evolution instead of Thunderbird.

45.3. Mail Signature

The official email signature of VSHN looks like this:

--

Firstname Lastname

Title according to homepage or business card

VSHN AG | Neugasse 10 | CH-8005 ZürichT: +41 44 545 53 00 | M: +41 XX XXX XX XX | https://vshn.ch

• At the beginning: two hyphens and a space.

• Only give your cell phone number if you want.

Signature in SOGo

Please define the signature also in the SOGo webmail (without the 2 hyphens "--").It’s a plain-text signature.

• After you have logged in, select the "Settings" wheel to the right of yourname.

156

Page 166: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Click on "E-Mail" in the "Settings" menu on the left.

• Select the menu item "IMAP Accounts" on the right.

• Select the mail for which you want to create the signature.

◦ Use the pen on the right to edit the settings.

• In the lower area you can enter the signature.

• Confirm with [OK].

After confirming with OK click on the save icon in the upper rightcorner of the menu. Only then the process is finished.

45.4. Default Mail Address

Your email address has many aliases available. To choose your default emailaddress, follow these steps.

1. Click on the preferences icon (top-right, next to the name).

2. Click on Mail.

3. Click on IMAP Accounts.

4. Click on the edit icon.

5. Type in your default E-Mail address ([email protected]) in the field"Email."

6. Click on [OK].

7. Click on the save icon on the top right.

45.5. Out Of Office

Before going on holidays (or any other prolonged absence) please setup your e-mail with the proper out of office message in the web interface:

1. Click on the preferences icon (top-left, right next to the name)

2. Select menu::Mail[Vacation]

3. Click on "Enable vacation auto reply"

4. Fill in the fields with the following text:

157

Page 167: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Hi,

Thank you for your message.I'm on holidays and I will be back on DAY, DATE. If your request is urgent,

please send it to [email protected]

Best regards,

[YOUR NAME]

--[YOUR SIGNATURE]

Finally, remember to click on the save icon on the top right.

There is a whole section in this handbook about absences andholidays handover, make sure to read it too!

45.6. Filters

The mail filters defined in the web interface won’t be migrated automatically toyour client, and they need to be created from scratch.

In Thunderbird, follow these instructions:

158

Page 168: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

1. Click on the preferences icon (top-left, right next to the name)

2. Click on Mail

3. Click on Filters

4. Create your filters as you like

◦ Hint: They’re disabled by default

5. Enable the filters with a tick

6. Click on the save icon on the top right

159

Page 169: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 46. Git GuidelinesHow we use Git, the distributed version control system (DVCS).

46.1. Commit messages

The seven rules of a great Git commit message

1. Separate subject from body with a blank line

2. Limit the subject line to 50 characters

3. Capitalize the subject line

4. Do not end the subject line with a period

5. Use the imperative mood in the subject line

6. Wrap the body at 72 characters

7. Use the body to explain what and why vs. how

Source: chris.beams.io/posts/git-commit/ (with more details)

Commit message subject

A properly formed Git commit subject line should always be able to complete thesentence "If applied, this commit will <subject>", doesn’t end with punctuationand the first letter is capitalized.

Commit message body

Reference tickets, issues, commits, tags, versions and pull requests whereapplicable. Our commit messages should look like this:

160

Page 170: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Summarize changes in around 50 characters or less

More detailed explanatory text, if necessary. Wrap it to at most 72

characters. In some contexts, the first line is treated as the

subject of the commit and the rest of the text as the body. The

blank line separating the summary from the body is critical (unless

you omit the body entirely); various tools like `log`, `shortlog`

and `rebase` can get confused if you run the two together.

Explain the problem that this commit is solving. Focus on why you

are making this change as opposed to how (the code explains that).

Are there side effects or other unintuitive consequences of this

change? Here's the place to explain them.

Further paragraphs come after blank lines.

- Bullet points are okay, too

- Typically a hyphen or asterisk is used for the bullet, preceded

by a single space, with blank lines in between, but conventions

vary here

If you use an issue tracker, put references to them at the bottom,

like this:

Resolves: CUST-123See also: commit 00abc123, CUST-789

46.2. Git Usage Basics

• git config

• git clone

• git remote

• git branch

• git rebase

• git add

• git commit

• git tag

• git status

• git push

161

Page 171: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• git reset

• git log

• git reflog

Example configuration

git config --global diff.color auto

git config --global color.interactive auto

git config --global color.status auto

git config --global color.ui auto

git config --global --bool merge.log 1

git config --global branch.autosetuprebase always

git config --global push.default tracking

git config --global format.thread shallow

git config --global --bool grep.lineNumber 1

git config --global --bool rebase.stat 1git config --global --bool commit.verbose 1

git config --global alias.br branch

git config --global alias.ci commit

git config --global alias.co checkout

git config --global alias.st status

git config --global alias.cp cherry-pick

git config --global alias.wdiff 'diff --color-words'git config --global alias.wshow 'show --color-words'

Example workflow

git clone [email protected]:vshn/handbook.git

git remote rename origin vshn

# add additional remote (optional) and pull in changes

git remote add github https://github.com/vshn/handbook.git

git pull github mastergit push

162

Page 172: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

# create a new branch for some changes

git checkout -b feature/add-git-guide-chapter

# (change or add some files)

git add -v .

git status

git commit -m 'Add new section'

# ooops, we made a mistake! Now update our last commit:

git commit -m 'Add new subsection' --amend

git push -u vshn feature/add-git-guide-chapter

# we added a new branch, let's double-check

git branch --remote

# after creating and merging a PR or MR, delete the branch

git checkout master

git pull

git branch -d feature/add-git-guide-chaptergit branch

git tag

git tag 1.0.0git push --tags

46.3. Tools

CLI enhancements

• git-extras

TUI tools

• tig

Graphical tools

• gitk --all

• git citool

163

Page 173: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 47. GitLabGitLab is our central source code management tool. It’s the place where we keepall our tools, puppet modules, or hiera configs.

INFO: To learn more about how we use Git, consult the Git Guidelines in the Wiki.

Given the complexity of code and its required levels of quality, we’ve implementedseveral measures to manage it.

47.1. Merge Requests

If not explicitly stated otherwise, a project will use GitHub flow. In GitHub flow,every new feature or bug gets its own branch.

We merge according to the four eyes principle, meaning that another person has toreview and merge your merge request.

47.2. CI/CD

CI/CD is an integral part of the DevOps philosophy. Projects we create should havea CI/CD pipeline to ensure short release cycles with fast, frequent and safedeployment of changes.

47.3. Pet Projects

We encourage pet projects at VSHN if you think they bring value to all of us.

As an engineer you might write scripts to simplify your work, to help you be moreproductive, or you just have a silly idea that could be fun or otherwise useful. If youthink it will save you (us!) time in the long run, it’s probably a good idea.

We encourage you to put them under version control, public or on our GitLab. Alsotell others about it and mention your project on this wiki page.

Sharing your experience through code allows everybody to learn and use it.

164

Page 174: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

As always, please try to keep the time investment in balancewith your work achievements. If it’s something like a toiletsensor, it’s okay to invest one to two hours initially (if yourworkload permits), but your work shouldn’t be impacted.

165

Page 175: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 48. Working with GnuPGGnuPG, the GNU Privacy Guard is a complete implementation of the OpenPGPstandard. It allows you to generate and manage your own GnuPG key, and is tightlyintegrated to many e-mail clients, libraries, and many other applications.

Ubuntu 18.04 includes both gpg and gpg2. However, Evolution andthe "Password and Keys" app (also known as "seahorse") onlywork with gpg2.

48.1. Create Key

The following command will guide you though the process of creating a new key:

gpg2 --full-generate-key

Follow the instructions and set a limited duration for the new key, for example oneor two years. And remember the password!

Check Key Fingerprint

Use the following command:

gpg2 --fingerprint [email protected]

For most practical purposes, the fingerprint can be thought of as the last fourhexadecimal characters of the output.

48.2. Send to Server

Submit your public key so that others can find you:

gpg2 --send-keys ABCDEF10

48.3. Import Keys from Other Users

You can find the keys corresponding to your colleagues with this command:

166

Page 176: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

gpg2 --search email@address`

Once found, use the gpg2 --recv-keys ABCDEF01 command to add it to your keychain.

48.4. Exporting Keys for Backup

You should export your key and store it safely, for example in your passwordmanager.

List your keys:

$ gpg2 --list-keys

Export your keys as follows:

$ gpg2 --output mygpgkey_pub.gpg --armor --export ABCDFE01$ gpg2 --output mygpgkey_sec.gpg --armor --export-secret-key ABCDFE01

This also works:

$ gpg2 --armor --export [email protected] > mykey.asc

The resulting file can be safely imported into other applications,for example ProtonMail or GitLab.

48.5. Using your Key

Check these related pages for more information about how to use your newlycreated key:

• Evolution Mail

• GitLab

48.6. More Information

• How-To: Import/Export GPG key pair

167

Page 177: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 49. GnuPG and EvolutionUsing your GnuPG key on Evolution requires the following steps.

49.1. Setup GnuPG in Evolution

Go to Preferences/Accounts and select your e-mail account. Then click on the"Security" section. The Key ID is the 8 last characters (or more) of the fingerprintseen above.

Clicking the "always trust keys in my keyring" option will allow Evolution to use thekeys in your keyring even if they’re not trusted. If you would rather trust keys oneby one, follow the instructions in the following section.

168

Page 178: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

49.2. Importing and Trusting Keys from OtherUsers

You can find the keys corresponding to your colleagues with this command:

gpg2 --search email@address`

Once found, use the gpg2 --recv-keys ABCDEF01 command to add it to your keychain.

If desired, raise its trust level to "Ultimate":

gpg2 --edit-key ABCDEF01 and then type the trust command, selecting option 5 to trustit "ultimately."

If a key isn’t "ultimately" trusted and the "always trust keys in mykeyring" isn’t selected, Evolution won’t use the key and youwon’t be able to encrypt your messages.

49.3. More Information

• How to Enable PGP Encryption in Evolution

• Using GPG with Evolution - Fedora Project Wiki

169

Page 179: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 50. GnuPG and GitLabYou can use your newly created key in GitLab very easily.

1. Export your GnuPG key as explained in the main document:

◦ gpg2 --armor --export [KEY_ID] | xclip -selection clipboard

2. In your GitLab GPG Keys settings paste the contents of the public key and hitthe [Add key] button.

3. Configure your local git installation:

◦ git config --global user.signingkey [KEY_ID]

◦ git config --global gpg.program gpg2

4. Use the -S switch to sign your commit:

◦ git commit -S -m "Some changes"

Run the git config --global commit.gpgsign true command to signall commits by default.

You should see your commits appearing as "Verified" on GitLab.

Make sure your GitLab profile page shows the "commit email" tobe the same as the one you used for your key! Otherwise yourcommits will stay unverified.

170

Page 180: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 51. CalendarSOGo calendars are an important tool of collaboration with your team members.

51.1. Shared Calendars in SOGo

In SOGo’s calendar view you’ll find a "Subscriptions" section in your side bar. Clickon the round "+" sign to search for a shared calendar.

Popular shared calendars:

• VSHN Company

• VSHN Events

• Internal Education

• Meeting rooms

• Personal calendars of your colleagues

171

Page 181: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

51.2. Access your Calendars from Evolution

If you use GNOME Evolution you can access your SOGo calendars following thesesteps.

1. In SOGo, click on the "⋮ › Links to this Calendar" menu next to your calendar.Copy the first field, labeled "CalDAV URL" to your clipboard.

2. Open the Edit › Accounts dialog box.

172

Page 182: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

3. Click the [Add] button and select the "Calendar" option.

4. Select the "CalDAV" type.

5. Enter the URL copied in the previous step.

6. Enter your username in the "User" field.

7. Click the [Find Calendars] button.

173

Page 183: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

8. You will be asked for your password. Enter it and a list of possible calendarswill appear. Select the one you want, choose a color and a name for it, and click[OK] to close the dialogs.

The same procedure applies to contacts (using CardDAV) andtask lists (using CalDAV).

Bonus: Holiday Calendar

If you want to add a calendar with the official holidays in Zurich, add a newcalendar of type "On The Web" with the following URL: fcal.ch/privat/fcal_holidays.ics.php?hl=de&klasse=3&geo=3055.

51.3. Share your Personal Calendar

Your personal calendar must be visible for your peers to see; this way they can tellwhere you are at any given moment. These are the steps to do share your personal

174

Page 184: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

calendar.

1. Click on the "⋮ › Sharing…" menu next to your calendar.

2. Choose "Any Authenticated User"–all SOGo users will have access to thiscalendar.

◦ Public: "View All"

◦ Confidential: "View the Date & Time"

◦ Private: None

175

Page 185: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 52. NextcloudWe use Nextcloud to share files across the company. You can access it with any webbrowser by following this link.

The main Nextcloud folder can also be opened on GNOME (as a server on "otherlocation") and as a share on Mac and Windows using the following URL:

davs://files.vshn.net/remote.php/webdav/

You can also sync folders to your laptop for offline access using the official clients.

176

Page 186: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 53. Merge Request TemplateThis document contains a template document which can be used for providing therequired context to your Merge Requests (MRs).

You can find this file in this very same repository, in this location:.gitlab/merge_request_templates/merge_requests.md

What does this MR do?

Please include a summary of the change and which issue is fixed. Please alsoinclude relevant motivation and context. List any dependencies that are requiredfor this change.

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructionsso we can reproduce. Please also list any relevant details for your testconfiguration

Types of changes

☐ Bug fix (non-breaking change which fixes an issue)

☐ New feature (non-breaking change which adds functionality)

☐ Refactoring (non-breaking change which adds no functionality)

☐ Infrastructure (change which affects containers or pipeline, linters, tests)

☐ Breaking change (fix or feature that would cause existing functionality tochange)

Screenshots (if relevant)

Make sure that you’ve checked the boxesbelow before you submit MR

☐ My code follows the style guidelines of this project

177

Page 187: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

☐ I have performed a self-review of my own code

☐ I have commented my code, particularly in hard-to-understand areas

☐ I have made corresponding changes to the documentation. (Readme, Wiki,SAD, Domain Model)

☐ My changes generate no new warnings

☐ This is a Bugfix, new Feature or a Refactoring

☐ I have added tests that prove my fix is effective or that my feature works. Ifnot, I created a comment explaining why no tests are needed.

☐ New and existing unit tests pass locally with my changes

Status

☐ Ready for Review

Does this MR meet the acceptance criteria?(Checklist for reviewer)

☐ Conforms to the style guides (black, flake8, pydocstyle)

☐ README updated, if necessary

☐ Tests added for this feature/bug. If no Tests were added, the MR creater givena good reason as a comment.

☐ Pipeline Passes

☐ If you have multiple commits, please combine them into a few logicallyorganized commits by squashing them

What are the relevant issue numbers?

Please include any relevants issue numbers with your request here.

178

Page 188: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 54. Chat ChannelsThis page provides some information about the various chat channels we use everyday.

Some of these channels are mandatory for all VSHNeers!

Questions Answers

Which channels to be in? There are a few channels which are mandatory for everyVSHNeer (#general & #announcements). The other channelsare semi mandatory (every VSHNeer has to be a member ofhis own Squadchannel) and some which are on a voluntarybasis.

How and when to create a channel?Mandatory things for a channel toexists (for example: gooddescription, topic, etc.)

Fill in a precise Room topic: What’s this channel used for, whoshould be part of it’s discussion allowed or not.

How to have discussions inchannels? (use threads)

ThreadsWill exist on the same channel. They add the parentmessage property to the messages, so they can bedisplayed on the sidebar. They’re used to justanswer a short question or input. For longerconversations it might be better to use thediscussion button. 

DiscussionsAre basically new sub channels that inheritpermission from the parent channel and have itscreation announced on the parent channel. Usually,a discussion is being created to discuss somethingwith a goal. Once this goal has been achieved, thediscussion is going to be deserted. Semantically, it’s"done."

179

Page 189: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Questions Answers

How to approach people in chat? • Typing is much slower than talking, so don’tjust say hi - www.nohello.com/2013/01/please-dont-say-just-hello-in-chat.html 

→ It doesn’t mean that you don’t have to followbasic courtesy rules, but jumping into the questionquestion directly and give your chatpartner thepossibility to answer your question even when youaren’t there anymore. This ansynchronusconversations saves you a lot of time. 

• Complicated issues, for which you have towrite a longer text, have no place in chat.Especially if there are several attachments. Themessages in the chat can’t be sorted away likean e-mail and it’s pointless to find the filesagain later. Better write a mail with a propersubject.

Customers in our chat, how they getaccess, why not to invite them intoVSHN channels, etc

Please check this page in the wiki.

54.1. Specification

Channel Mandatory for VSHNeers Long story short

VSHN Chat yes, during loggedattendance time

Means:

• be online

• or offline but checkevery few hours

#announcements  yes, during loggedattendance time

VSHN wide read onlyannouncements. Mandatory forevery VSHNeer

180

Page 190: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Channel Mandatory for VSHNeers Long story short

#general yes, during loggedattendance time

Daily announcementsabout attendences

transitory announcementslike visitors,doodles Recrutinginterviews, 

#off-topic no Topics / Links with no directrelation to work but interestingfor VSHNeers

#technical yes, for tech people

#link-dump no link things you want to sharewith other vshneers

#goodnews no announcements of good news,articles, blogposts from insideand outside the Vshn universe

#documentation yes, for chapter members discussions aboutdocumentation in wiki,handbook etc are held here

#meetups no information about all kind ofmeetups

#OfficeMgmt yes, for chapter members Topics around our physicaloffice

#orgdev yes, for chapter members Discussions about organisationdevelopement

#recruiting yes, for chapter members Notice the recrutingpipeline andfind chapter people for talks

Squadchannels yes, for squad members Channel for squad specifictopics

Customerchannels yes, for squad members Channel for topics attached toCustomer X

181

Page 191: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 55. Zoom PhoneAt VSHN we use Zoom Phone as our official phone system. This page contains allthe information you need to get it up and running.

55.1. Installation

1. Download the client (for Windows, macOS, and various Linux flavors).

2. Log in with your VSHN email address and password.

3. Notify the Sol squad if you need a license.

The most common need for a license is when you need toschedule meetings longer than 40 minutes, which is the defaultlength for Zoom calls.

For mobile phones, you can download the clients for iOS and Android.

55.2. How to use

Make sure your Zoom client is always open. The easiest way is to make it startautomatically when your computer starts.

1. Open the client

2. Click on the [Phone] tab button (or on [Telefon] if your application isrunning in German)

182

Page 192: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

◦ On the left side you can see your call history and the voicemail inbox.

◦ On the right side you can enter a phone number. You can also enter aname–it pops up when you have it in your address book.

◦ On the right side at the bottom you can see your Caller ID. This is yourinternal phone number, and it’s visible to customers. Usually it’s the officenumber.

◦ You can also change your ID opening the dropdown next to the Caller ID.

◦ On the right side you can see your own number (804 for example). This

183

Page 193: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

number VSHN can use to transfer calls to you directly.

In a call

You have different options in a call:

• You can mute yourself;

• You can add someone to a call;

• You can hold the call;

• You can transfer the call to another VSHNeer;

◦ You can choose to speak with this other VSHNeer before you transfer thecall: please do it! Then transfer the call just by clicking the [EndTransmission] button.

184

Page 194: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Please be aware that if you are transferred a call from acolleague, the name of that colleague will be visible during thecall. This is normal, even if you aren’t speaking to that personanymore.

• Finally, you can upgrade the call to a Zoom Video meeting.

After a call

• You can see the list of all previous calls.

• When you hover over any call, 3 dots appear: if you click on them you will seeanother menu with even more options.

You can block callers, but don’t do this for customers!

Incoming calls

When someone calls you, a pop-up appears. You can accept the call by clicking on[Accept].

185

Page 195: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

If a VSHNeer forwards you a call and you pick up, he can tell you who is on the line.As soon as the call from the other side (VSHN) is ended you have the customer onthe line.

Attention: There is no sound when the VSHNeer has handed over, the customer isdirectly connected to you. Say "hello customer here is .." 

Using Zoom Phone from mobile devices

The app works very similarly to the one for your computer, but it looks slightlydifferent. You can use the mobile application to make calls with the office number,wherever you are.

186

Page 196: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

55.3. Process

187

Page 197: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

incoming callsupporthotline09:00- 12:0013:00- 18:00

3rd Level finda solution

centralofficetake the call

09:00- 12:0013:00- 18:00

Can we help/is the callforantares/eltanine/sol?

Customerhas a

solution/workaround

Start

No

No

yes

No

Yes

Yes

1st Level canhelp?

2nd Level canhelp?

Officenumber

No

Emergencynumber

18:00-09:00

Process likehere:

kb.vshn.ch/kb/contact.html

Supportnumber

55.4. Call Queue Handling

To change the people in a call queue, please follow these steps.

188

Page 198: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Go to vshn.zoom.us

• Sign In

• Go to Phone System Management

• Go to Call Queues

• Choose the "Main" Queue

189

Page 199: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Under the Section "Member(s)" click"View or Edit"

• With "Add Members" You can addnew members to the queue

• Make sure the member(s) you wantto remove isn’t Manager of theQueue

◦ If he is, click "Set as Manager"behind someone else

• Mark the member(s) you want toremove

• Click "Remove"

55.5. Rotation

Every week, a group of VSHNeers from different squads take care of answering

190

Page 200: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

phone calls. This section describes the methodology and rules of this rotation.

Office Number

Topic Answer

Which squads are responsible? Antares, Eltanin, and Sol

How many people? 3 People

How long does a rotation last? For 1 week, every week.

How are rotations organized? Rotations are planned in advance; in case youmust leave earlier, contact your peers in the#phonesupport channel and somebody will takeover for you.

How do rotation work? • Answer phone calls between 9 AMand 12 PM, and 1 PM and 6 PMCEST.

• As a minimum, at least one personshould be watching the phone forcalls.

• In case of a long appointment (forexample, more than 2 hours long)request somebody else to take overthe shift.

55.6. Tips and Tricks

Please contact the following people for all matters regarding the Zoom Phonesystem:

• Matthias Indermühle

• Aarno Aukia

• Tatjana Suter

For internal calls, between VSHNeers, use standard Zoom meetings instead ofZoom phone calls. The only exception to this rule is when transferring calls toanother VSHNeer.

Check the How to Answer Phone Calls page for more tips andtricks.

191

Page 201: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Chapter 56. VideoconferencingGuidelinesWe use Zoom as our default videoconferencing system. The rules below apply forother similar tools too, even though they mostly focus on Zoom.

This page defines general etiquette guidelines for joining meetings, and importantsecurity configurations and rules.

56.1. Etiquette

Some of the following rules have been borrowed from an articleon the BBC website.

• Consider if video chats are really the most efficient option. Sometimes sharinga Confluence wiki page, starting a Discourse thread, or having a conversationover chat are enough. Limit video calls to those that are really necessary.

• In the Zoom settings, select the following options:

◦ Video: "Turn off my video when joining meeting"

◦ Audio: "Mute my microphone when joining a meeting"

• Test your webcam and microphone before joining meetings. Sometimesplugging and unplugging them, or just rebooting your laptop, might changethe selected device.

• Beware of microphone feedback loops if you aren’t using headphones.

• Turning on the camera is optional. Cameras don’t always have to be onthroughout each meeting.

◦ In particular, if your network connection is poor, try turning the cameraoff first.

• Turn off your microphone if you aren’t actively participating in a conversation.This will avoid ambient noises slipping into the meeting.

• Having your screen off to the side, instead of straight ahead, could also helpyour concentration, particularly in group meetings.

• Take time at the beginning of meetings to catch up before diving intobusiness.

192

Page 202: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Have a break in between video meetings: try stretching, having a drink ordoing a bit of exercise.

• Plan a few five minute breaks for calls longer than one hour.

56.2. Security

When using Zoom follow these rules:

• Regularly update your Zoom client (check for updates in menu "About")

• Stay cautious when sharing Zoom URLs, especially if the password isembedded or access control isn’t in use.

• Use your vshn.ch address for your Zoom account.

• Avoid Zoom for confidential ("VERTRAULICH") content.

• Don’t share recordings of non-public meetings without access control.

General security rules for creating meetings:

• Don’t use your personal meeting id for external meetings, create newmeetings ad-hoc as needed.

• For VSHN internal meetings:

◦ use access control settings to restrict the meeting to VSHNeers.

• For external meetings:

◦ Protect the meeting with a password.

◦ Consider using the waiting room.

◦ Consider locking the meeting after all participants have joined.

◦ Consider using "Only authenticated users can join" access control.

• For your personal meeting room:

◦ Activate the waiting room so you have the admit participants individually.

56.3. Sources

The following resources provide more information about the subject:

193

Page 204: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

TerminologyAmboss Rampe

The brewery bar next door, famous for its traditional beer.

Chapter

A group of people coming from various squads solving a particular problem inthe company. Chapters are orthogonal to squads.

Squad

The basic unit of organization in VSHN. Every person in VSHN belongs to oneand only one squad at any given time.

VSHN

The name of the company, pronounced like the english word "vision:" ˈvɪʒn. It’snot an abbreviation, it’s just some characters put after each other, soundinglike "vision."

VSHNeer

An employee of VSHN.

VSHNary

Anyone aligned with the VSHN culture.

Some of our tools have really weird names. If you ever feel lost, just refer to thistable.

Name Description Translation Wiki Source

Aedifex "Secure" DockerBuilder on APPUiO

GitLab

Carinik RHOCS MetricsExporter

GitLab

Chlaus Miniature HTTPAPI to look up DNSrecords

GitHub

Concierge Align yourrepositoryconfiguration files.Plain simple, withCI.

Concierge GitHub¹

GitHub²

195

Page 205: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Name Description Translation Wiki Source

Espejo Kubernetes objectsyncer

Mirror (Spanish) GitHub

Garacho VSHN PackageCache

Package cache GitLab

JOSY Custom Jira ←→Odoo synchronizer

"Jira Odoo Sync"

K8up Kubernetes /OpenShift BackupOperator

Kubernetes (K8s)backup

APPUiO Backup asa Service - K8up

GitHub

k8up.io

Krossa OpenShift/Kubernetes object listsplitter

Swedish for"shatter,""pulverize"

GitLab

Larawan Automated virtualmachine imagebuilds using Packer

GitLab

Locutor Ansible callbackplugin sendingimportantmessages to chatchannels

Spanish for"Speaker" or"Broadcaster"

GitLab

Martelo Utility to take overany Linux systemwith little morethan SSH accessand "root"privileges with acustom disk image.

Hammer(portuguese)

GitLab

Mungg Collection ofAnsible playbooks& roles related toOpenShift

Marmot (SwissGerman)

GitLab

Pacco Local PuppetVagrantenvironment

GitLab

Paecklichef Downloadspending updatesto local cachesprior to weeklymaintenance

GitLab

Pictor Build variousimages for virtualmachines inDocker

GitLab

196

Page 207: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Appendix A: Information about SARS-CoV-2 / COVID-19This page provides details about the handling of the coronavirus situation at VSHN.It was last updated on June 22, 2020, after the FOPH simplified the regulations.

A.1. Modus Operandi

After June 22, 2020, we don’t use the presence list in the wikiany more.

• The hygiene recommendations of the FOPH should be followed during workhours and in private.

• Keep a 1.5m distance to others whenever possible

• Please use hand sanitizer or wash your hands as soon as you arrive in the officeand wash your hands regularly

• Go home should you feel sick. Wear a mask on your way home.

• Stay home should you feel sick.

• It’s recommended to carry a mask with you when using public transport. Putthe mask on during rush hours. If you need a mask, they’re placed near theentrance

A.2. Why

On June 22, 2020, most regulations were lifted. Therefore VSHNeers can go to theoffice again without registration in the Wiki list.

On June 19, 2020, the Federal Office of Public Health FPOH (aka BAG) published amedia release with a summary of the changes. Below the regulations for offices.

Recommendation to work from home lifted

198

Page 208: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

The decision as to whether staff should work from home or return to the officeis now one for employers. The recommendation to work from home is to belifted, as are the guidelines on protecting people at especially high risk. Theseindividuals may also return to the workplace, however the employer is requiredprotect the health of staff by putting in place appropriate measures.Employment legislation applies. The simplified basic rules also apply to trade,industry, and to service businesses not accessible to the public. No sets ofprecautionary measures are required.

A.3. External links

In order to stay informed, we think these links contain excellent information:

Official information

• Official page of the Swiss government

• Official campaign page of the Federal Office of Public Health FOPH

Regulations (German)

• Verordnung 2 über Massnahmen zur Bekämpfung des Coronavirus (COVID-19)

199

Page 209: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Appendix B: Quick LinksIn VSHN we use a variety of tools to help us do our jobs. This section provides quicklinks to many of them. If you can’t find what you’re looking for here, there’s a"Tools" section in the Control Panel (see below) which lists all services you haveaccess to!

B.1. General

Control panel

Manage Servers and Customers

Webmail and calendar

Our Mail and Calendar

Wiki

Our Confluence Wiki to record everything from processes to howtos.

Rocket Chat

Our Chat program where we discuss everything VSHN related.

Jira

Tickets and Project Management

Odoo ERP

To log presence, and for leave requests

Zoom Meetings

Tool to make Video Calls

Nextcloud file storage

File Storage, mainly for business and marketing related files.

B.2. Technical

GitLab

Our Source Code Management Software

200

Page 210: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

B.3. Communication

Status page

Our Status Page will inform customers about planned maintenance andincidents.

WordPress Admin/Editor

Edit our Website

B.4. Misc

201

Page 211: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Appendix C: VSHN EmployeeHandbook READMEThis project contains the AsciiDoc source of the VSHN Employee Handbook.

C.1. Contributions

Please check the Contributing document for information.

C.2. Requirements

The only requirement to build this project is Docker.

Web Version

This project is built with the vshn/antora Docker image.

Other Versions

The man page version of the Handbook require the Asciidoctor Docker image.

The PDF version is built with the vshn/asciidoctor-pdf Docker image.

The EPUB3 and Kindle versions are built with the vshn/asciidoctor-epub3 Dockerimage.

C.3. Build Instructions

For Authors: Antora will only build the currently checked localbranch, using as source the git repo and not the local filesystem.

1. Clone the project:

◦ git clone [email protected]:vshn/handbook.git

2. Run the make command.

3. Open the public/index.html file to see the generated website. A ZIP file with thegenerated output will be located in the _archive subdirectory. The PDF file willalso be located there.

202

Page 212: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

4. You can make epub and make kindle to build the remaining items, if desired.

Cleaning the Build

You can clean the build artifacts at any time using the make clean command.

203

Page 213: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Appendix D: Contributing to theHandbookThis document highlights how to make changes in this project.

For the technical requirements of this project, please check the README.

There was an internal documentation session about contributingto the VSHN Handbook on August 9th, 2019. All the informationabout it (including link to the video, slides, etc.) is available inthe VINT-1429 ticket. Check it out!

D.1. Language and Vocabulary

Please follow the following guidelines for your writing:

• The language of the Handbook is American English.

• Please use gender-neutral English whenever possible. Refer to people as"they" and "them" instead of "he," "she," "him" or "her."

• Write short sentences.

• Introduce enumerated lists (like this one) with a little bit of context (as in theprevious paragraph).

• Beware of common grammar mistakes in written English.

• Use a spell checker before committing your changes.

The text of the handbook is automatically verified by the valetool before deployment. You can use the tool locally in yourlaptop, just using the make check command. As a rule of thumb,your text must not trigger any errors in the output of vale.

When writing content for the Handbook in your own laptop, usethe make check command to trigger a verification of your textusing the vale tool.

204

Page 214: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

D.2. Documents

• Documents are written in AsciiDoc. Please check the AsciiDoctor user manualfor a complete reference of the AsciiDoc language.

◦ There is a quick reference document as well.

• The pages of the manual are stored in the src/modules/ROOT/pages folder. This is arequirement of the Antora tool used to build the website. Thesrc/modules/ROOT/nav.adoc file contains the navigation bar shown on the left sideof the screen.

◦ Don’t use subfolders inside the pages folder. Store all pages inside thesame level. You can regroup them into sets later on–for example, on thenav.adoc file for the website, or in the handbook.adoc file for dividing the PDFinto parts.

• Filenames should use the underscore character "_" and not the dash "–" todistinguish different parts.

• Images must be stored in the src/modules/ROOT/assets/images folder, andreferenced using the following block macro:

image::file_name.ext[optional alt text]

D.3. Branching Model

We use feature branching with merge requests to support our developmentworkflow:

• The default branch of the project on GitLab is develop. This branch isn’tdeployed to production (published version of the handbook).

• Changes happen in (short-living) branches. Create such a branch, push changesto it, and open a merge request for review (four-eyes principle) before it getsmerged into develop.

• Every so often, somebody from the Documentation chapter will create an MRto merge develop into master, which automatically triggers a new deployment ofthe Handbook.

205

Page 215: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Check the "Delete source branch when merge request isaccepted" checkbox when creating new MRs. This will clean upmerged branches automatically.

D.4. Workflow

In a nutshell, this is how we use Git in this project:

• To add a new page to the handbook, or to modify or delete an existing one,start a new branch.

• When done, always create a MR on GitLab, and request a colleague to reviewand merge the changes.

Everytime you add a new page or delete an existing one, remember to modify thesrc/modules/ROOT/nav.adoc and the src/handbook.adoc files; the former is the navigationbar shown at the left side of the handbook, the latter is the master file of the PDF& e-book formats.

D.5. Tickets & Time Tracking

If your modifications include substantial changes to the contents of the handbook,please create a new task blocking the VINT-1317 project milestone. This new taskshould summarize in a nutshell the changes that you intend to make. You can thenlog your time on that specific task.

If you can’t make the changes yourself, assign someone from theDocumentation chapter to do them on your behalf.

For smaller changes, simply open a merge request and log your time on the VINT-1321 chore.

D.6. Useful Tools

Some recommendations to work with Git:

1. GitLab Web IDE (integrated, web-based IDE)

2. Sourcetree (Git GUI for Windows, macOS, Linux)

3. GitKraken (Git GUI for Windows, macOS, Linux)

206

Page 216: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

4. Codium (Windows, macOS, Linux) has built-in support

D.7. Merge Request Approval Process

MRs are approved by the project editor, or one of their deputies, with prioragreement from the Documentation Chapter. When approved, the changesets ofthe MR are merged into develop.

Never push commits directly to master. Always create a featurebranch and open a MR to merge changes into develop.

D.8. Release Process

After merging a MR, its changes are automatically published to APPUiO.

Use Semantic Versioning for version numbers.

D.9. Tips for Visual Studio Code Users

Install the Official AsciiDoctor Visual Code extension and then add the followingentry to your settings, to allow images to appear in the preview pane and for abetter writing experienceg:

207

Page 217: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

"[asciidoc]": {

  "editor.quickSuggestions": {

  "comments": false,

  "other": false,

  "strings": false

  },

  "editor.wordWrap": "wordWrapColumn",

  "editor.wordWrapColumn": 70

},

"asciidoc.preview.attributes": {

  "imagesdir": "../assets/images",

  "experimental": "experimental",

  "toc": "preamble",

  "icons": "font",

  "hide-uri-scheme": "",

  "kroki-server-url": "[KROKI URL HERE]",

  "nofooter": ""

},"asciidoc.preview.fontFamily": "'Ubuntu',-apple-system, BlinkMacSystemFont, 'Segoe

WPC', 'Segoe UI', 'HelveticaNeue-Light', 'Droid Sans', sans-serif",

"asciidoc.use_kroki": true,"asciidoc.preview.useEditorStyle": false,

D.10. Other Recommended Tools

• git extras

D.11. Recommended Reading

• The Three Core Antora Concepts You Need To Know To Use It Fully

208

Page 218: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Appendix E: CHANGELOG

2020–07–16: Version 1.13

Content:

• Added page with instructions about the Zoom phone system.

• Added page with tips and tricks to answer phone calls.

• Added new page with the list of meeting rooms.

• Document final decision in recruiting process.

• Fix how members of the management are appointed.

• Rename human resources to PeopleOps.

2020–06–22: Version 1.12.1

• Typos fixed in SARS-CoV-2 / COVID-19

2020–06–22: Version 1.12

Content:

• Add list of popular shared calendars to calendar.

• Update the Sirius Squad mission statement.

• New page that describes how we work in the office.

• Adapt Meeting culture and other changes in favor of working remotely.

• Document the base of our organizational structure.

◦ Split management board and the management member role.

◦ Document that VSHN implements Sociocracy 3.0 patterns and conceptswhere it makes sense.

• Document how we make organizational decisions.

• Updates to Customer Success Manager role.

• Refinement of weekly team meeting.

209

Page 219: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Small wording changes in your first day.

• Updated information about SARS-CoV-2 / COVID-19 after regulation relaxing.

2020–06–08: Version 1.11

Content:

• New pages documenting the Altair Squad.

• Adapt duties of the Squadmaster to the Altair concept.

• Update FOPH recommendations.

2020–06–03: Version 1.10

Content:

• New page about the languages spoken in VSHN.

• Updated information about SARS-CoV-2 / COVID-19.

• Updated project states and roles.

• A lot of small corrections and improvements.

Infrastructure:

• Added automatic spell checking and dead link checking for authors.

2020–04–30: Version 1.9

Content:

• Added Video conference tools usage guidelines.

• Added new page about the CISO role.

• Added documentation finder page.

• Additions and corrections to the trial period page.

• Updated guidelines regarding the SARS-CoV-2 / COVID-19 situation.

• Small corrections and improvements.

210

Page 220: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Infrastructure:

• Added liveness and readiness probes to OpenShift deployment.

• Updated project to latest version of Antora and other tools.

2020–04–09: Version 1.8.1

• Small fixes.

2020–04–09: Version 1.8

Content:

• Added a "Values, Vision and Mission" page.

• Renamed "Customer Success Hero" to "Customer Success Manager."

• Updated links to tickets used for internal bookkeeping.

• Other small modifications.

2020–03–16: Version 1.7.1

Content:

• Updated the SARS-CoV-2 / COVID-19 page.

• Updated the remote working page.

• Added section on TUI tools and fixed confusion about git log and git reflog inthe Git Guidelines page.

2020–03–16: Version 1.7

Content:

• Added new page about SARS-CoV-2 / COVID-19 handling at VSHN.

• Added new page about remote working

• Added Git Guidelines chapter.

• Updated Mail configuration settings.

211

Page 221: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

2020–03–03: Version 1.6

Content:

• Added information about leave requests.

• Added new page describing the role of HR.

• Added new page about the Personal Education Process.

• Updated Jira blocking rules.

• Various small corrections.

Infrastructure:

• Added support for text-based diagrams using Kroki.

• Updated project to latest version of Antora and plugins.

• Updated project to latest version of PDF and EPUB generator images.

2020–01–27: Version 1.5

Content:

• Added information about the new "Altair" and "Eltanin" squads.

• New page with the complete list of chat channels.

• New page about the Technical Service Manager role.

• New page about the conflict resolution process.

• Updated Jira links.

• Various small corrections.

Infrastructure:

• New navigation.

• Updated Antora UI bundle.

• Updated search engine.

2019–12–20: Version 1.4

212

Page 222: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Content:

• Added Communication Channels page.

• Added a roles introduction page.

• Added the role of management.

• Improved the description of the role of mentor.

• Improved the description of the role of product owner.

• Renamed role Customer Relationship Manager (CRM) to Customer SuccessManager (CSH).

• Refined squad documentation.

• Added Martelo to the list of tools.

• Various small corrections.

Infrastructure:

• Updated PDF and EPUB3 generation to latest versions of Asciidoctor.

• EPUB3 file displays custom font.

2019–11–20: Version 1.3

Content:

• Reorganized navigation menu.

• New content for the GitLab page.

• New page with meeting rules.

• New pages with explanations of the different roles.

• New page about the trial period.

• Explanation about how to pronounce the word "VSHN."

• Updated squad descriptions.

• Correction of various errata and typos.

Infrastructure:

213

Page 223: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

• Built using Antora 2.2.

• Separated PDF and EPUB build procedure into separate projects.

2019–10–09: Version 1.2

Content:

• Added the "Reverse Interview" page.

• Added the "Work Logs" page.

• Replaced "Götti" with "Mentor" throughout the handbook.

Infrastructure:

• Added Asciidoc processing macros to the Antora playbook.

• Added GDPR disclaimer, links, and Google Analytics tracking to generatedwebsite.

• Added STEM support for PDF, EPUB, and Kindle output.

2019–10–01: Version 1.1

Content:

• Added "Salary System" page.

• Added precisions about when to close timesheets.

• Added CHANGELOG.

• Updated UI bundle to support STEM content.

• Lots of small corrections and additions.

Infrastructure:

• Reorganized Dockerfiles in subfolders.

• Added verification using the vale tool.

2019–07–25: Version 1.0

214

Page 224: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

First publicly available version.

Content:

• Added "Everyday Life" page.

• Added "Recruiting" page.

• Added "Timesheets" page.

• Added GPG-related pages.

• Easier download of eBook versions.

• Added man page output to eBook formats.

• Corrected typos and rephrased various items.

Infrastructure:

• Updated UI bundle.

• Deployment to APPUiO via CI/CD at handbook.vshn.ch/

• Unified all build tasks to use Docker containers exclusively.

• Added search engine.

• Separated Lunr.js indexing into separate project.

2019–06–07: Version 0.5

• Interim version during development.

• Preliminary migration of content from the wiki.

215

Page 225: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

Appendix F: LicenseCopyright © 2014–2020 VSHN AG–All Rights Reserved.

Redistribution and use in source and binary forms, with or without modification,are permitted provided that the following conditions are met:

• Redistributions of source code must retain the above copyright notice, this listof conditions and the following disclaimer.

• Redistributions in binary form must reproduce the above copyright notice, thislist of conditions and the following disclaimer in the documentation and othermaterials provided with the distribution.

• Neither the name of the copyright holder nor the names of its contributorsmay be used to endorse or promote products derived from this softwarewithout specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOTLIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FORA PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHTHOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOTLIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ONANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USEOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

216

Page 226: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

IndexA

action points, 50Aedifex, 195Altair, 58announcements, 83Antares, 58application, 16APPUiO, 87attend meetings remotely, 47

B

basic annual wage, 39benefits, 40bonuses, 39

C

CalDAV, 173calendar, 46calendar invite, 46Capella, 58CardDAV, 174Carinik, 195Chapter, 73chapter, 139Chapters, 21chat channels, 179chat system, 155Chief Information Security Officer, 115Chlaus, 195choice of computer equipment, 40CI/CD, 164, 19CISO, 116cleaning, 33coffee machine, 35communication, 21communication channels, 82Concierge, 195

conflict resolution process, 101conflicts, 101coronavirus, 198Customer Success Manager, 117, 117,

118

D

daily routine, 80default email address, 157DevOps, 164, 17differences of opinions, 21docking station, 28Doctor visits, 105documentation, 137, 25drinks and snacks, 34

E

educational budget, 100Eltanin, 58email signature, 156empty bottles, 36Espejo, 196Evolution, 168Expenses, 35experience level, 38

F

facilitator, 46first contact, 17first-aid kit, 35flexitime, 40four eyes principle, 164

G

Garacho, 196Git, 160git, 141, 98GitLab, 164, 170, 19

217

Page 227: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

GNOME Evolution, 172GnuPG key, 166, 168, 170

H

Halbtax, 40Handbook, 137, 2hardware budget, 27, 28HeroOps, 95holidays, 103, 158, 40, 97

I

IMAP, 156introductory program, 30

J

Jira, 141, 142, 19, 41JOSY, 153, 153, 196

K

K8up, 196Kanban, 20Krossa, 196

L

laptop, 27Larawan, 196leave request, 103Lenovo, 27links, 200Locutor, 196lunch, 36

M

MacBook, 28Mail, 155mail client, 155mail filters, 158Martelo, 196Massages, 40maternity leave, 24, 40

meeting rules, 47meetings, 45Mentor, 124Merge Requests, 177microwave oven, 34Military service, 103moderator, 49Mungg, 196

N

Nextcloud, 176

O

Odoo, 153, 41onboarding, 21OnCall, 20, 39, 97OpenPGP, 166Operations duty, 97out of office, 157, 97

P

Pacco, 196Paecklichef, 196paternity leave, 24, 40pension schemes, 39PeopleOps, 119personal project, 39Phantom Stock Options, 40phone calls, 92phone system, 182Pictor, 196Polaris, 58principles, 14printers, 36Product Owner, 127Product owners, 126project management, 143Project Manager, 129Project managers, 128Public Holidays, 103

218

Page 228: The VSHN Handbook › handbook.pdf · 25.8. How to Record Sick Leaves and Medical Consultations. . . . . . . . . . . . . . . 91 25.9. How to Record Unpaid Leave Requests

R

Roles, 112

S

salary evolution, 38salary system, 37Scrum, 20second meeting, 17Seiso, 197servant leader, 132Service Manager, 130, 131share your personal calendar, 174Sick leaves, 105Signalilo, 197Sirius, 59SMTP, 156Snacks & drinks, 40social security, 39software, 28SOGo, 155, 171Sol, 59source control, 19squad, 139, 27, 57Squad master, 133squad planning meeting, 97Squads, 21stand-in, 98, 98standing desk, 28status, 88

T

team events, 40Technical Service Manager, 134, 134,

135technology stacks, 19Threema, 87timesheets, 41, 97tools, 195training, 100training courses, 39

trial period, 30

U

Ubuntu, 28unit testing, 19Unpaid holidays, 104Ursula, 197

V

Vagthund, 197values, 5videoconferencing, 192VSHNary, 17, 20VSHNeer, 14, 142, 18, 20, 26, 38VSHNeers, 73

W

weekly all-hands meeting, 33weekly team meeting, 56where to find more documentation, 25wiki, 137, 138, 138, 139, 139, 2, 73Windows, 28Work Description, 152Work Logs, 152work week, 21workflow, 146working, 26working remotely, 79Wrestic, 197

Z

Zoom, 182, 192, 93Zoom Phone, 182

219