Developer Onboarding

Developer Onboarding

Employee Manual & Self Service

Answers to most general questions can be found in the employee manual.  It is alongside other important documents in our self-service section on our network.  Your computer should include network links to this area pictured below.  Additional unanswered or personal questions can be sent directly to hr@cumulus-erp.com.

Time off requests

Time off requests can be made on https://people.zoho.com/ this site maintains your personal balance of time off.  All things related to PTO and holidays are covered in the employee manual.

Training

The MFGx developer training curriculum consists of a series of Udemy courses, hand-selected by the dev team based on personal experience - every developer has been through at least a few of these courses. The courses are intended to be taken in order; as you complete a course, your mentors will answer any questions you have, provide assistance as needed, keep track of your progress, and review the tutorial applications you've built as you complete them. Once you've completed a course to your mentor's satisfaction, you'll get access to the next one in the list; as you proceed, you should find that the sections on fundamentals get easier, allowing you to focus on the specific topic at hand in a course. As you near the end of the curriculum - once your mentors have confidence in your ability to handle more complicated work - they'll begin to assign you tasks in the production codebase.

To begin training simply use this link to reset your password.  Your login will be your cumulus email address.

As part of the training process, you'll be managing your source code in a git repository specifically created for you; only you and your mentors will have access. As you complete the work outlined in the courses, you'll commit your code, push it to Bitbucket (our git remote server application), and submit a pull request; your mentors will then sit down with you and review the code, making suggestions and answering any lingering questions you might have. Finally, they'll merge your code, just as they would on the production product!


Courses are to be complete in the following order:
  1. https://www.udemy.com/course/the-web-developer-bootcamp/ (Developers with previous experience may skip this course)
  2. https://www.udemy.com/course/graphql-by-example/
  3. https://www.udemy.com/course/javascript-es6-tutorial/
  4. https://www.udemy.com/course/the-complete-nodejs-developer-course-2/
  5. https://www.udemy.com/course/react-redux/
  6. JSONata in 5 min
  7. MFGx Training Video: Introduction to Data Flow Design
  8. MFGx Training Video: MFGx Extension - Basic Configuration
  9. MFGx Training Video: Introduction to MFGx Device Gateway
  10. MFGx Training Video: Introduction to MFGx Edge

Recommended reading

While the following section isn't required it is recommended to better understand our customers and how we help them.  Please consider reading each of these items on your own time.

  1. https://www.amazon.com/Need-About-Manufacturing-Learned-Garage/dp/0963043935/
  2. https://en.wikipedia.org/wiki/Enterprise_resource_planning
  3. https://www.plex.com/products/enterprise-resource-planning

Software & IT Support

Developer machines have been locked down to prevent excess software and malware from being installed.  If during your setup process you need to install additional software applications you will need to email our virtual IT department.  Additionally, if you have any difficulties setting up or using your machines in the future please keep their email handy: smb.support@insideoutnetworking.com

Local Development Setup

Developers will be granted local admin rights for a short period of time allowing them to install the following software locally for development:
  1. Docker Desktop: https://www.docker.com/get-started
  2. Node.js (Node 12 latest): https://nodejs.org/dist/latest-v12.x/
    1. Developers also need to install the windows-build-tools NPM package globally.
    2. Install instructions are to run npm i -g windows-build-tools after installing nodejs v12
  3. VS Code: https://code.visualstudio.com/download
    1. https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer
    2. https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint
    3. https://marketplace.visualstudio.com/items?itemName=kumar-harsh.graphql-for-vscode
    4. https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode
    5. https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-docker
  4. Robo 3T (Mongo): https://robomongo.org/
  5. GIT: https://git-scm.com/downloads
  6. Insomnia: https://insomnia.rest/download
  7. Notepad++: https://notepad-plus-plus.org/downloads/
  8. Chrome: https://www.google.com/chrome/
    1. Cumulus Web: https://chrome.google.com/webstore/detail/cumulus-web/ohndojpkopphmijlemjgnpbbpefpaang?hl=en-US
    2. MFGx: https://chrome.google.com/webstore/detail/mfgx-browser-extension/kcamgdjiikgoglpfomjikmdonhfaplod?hl=en-US

Local MFGx.io Environment

The MFGx.io backend architecture consists of a number of Docker containers, each running a small portion of the overall service mesh. On your local environment, containers are networked using a Docker virtual network, with relevant ports from each container mapped to ports on the host.

Setup instructions are kept up to date in our code base as a readme file:

Time Tracking

All your time worked must be reported on either:
  1. Tickets in https://desk.zoho.com/ (note: this time automatically goes into projects)
  2. Tasks assigned to you in https://projects.zoho.com/

Daily Duties

Expectations for daily duties include the following:
  1. Attend your daily standup using Microsoft Teams (part-time interns are optional)
  2. "My Open Tickets": https://support.cumulus-erp.com/support/cumuluserp/ShowHomePage.do#Cases
  3. "My Open Tasks": https://projects.cumulus-erp.com/portal/cumulusconsultingllc#myclassic/customview/19
  4. "My Open Issues": https://projects.cumulus-erp.com/portal/cumulusconsultingllc#mybugs/19

Peer Reviews

If your task or ticket results in a change to the platform you will need to have your code deployed.  Once your changes are working the first step is creating a pull request and seeking out a peer review.  The development team is put on a rotating schedule with different reviewers every week.  This peer review is the first step towards final approval and deployment.  More information can be found here: Developer Peer Reviews

Project Planning

Each developer will be assigned a number of tasks in Zoho Projects.  Those tasks include buckets of time for tickets as well as project tasks.  Project tasks may include a combination of internal work for the platform and external work for customers.  All tasks have due dates and it is very important to communicate to your team leader as soon as a date becomes at risk of being late.

Here is a sample resource utilization tool that our teams use during each standup to verify that individuals are on track to complete tasks in a given time:


    • Related Articles

    • Developer Peer Reviews

      Why? Peer reviews keep changes flowing through the deployment pipeline and out to production Peer reviews share knowledge between engineers Peer review participation and quality are part of your annual performance evaluation Peer review participation ...