Consulting: Projects

Cross-Platform Desktop Application (since July 2017)

Position: Frontend Lead
Sector: Semiconductor manufacturer

Project goal: Desktop application to automate and simplify recurring engineering tasks and to provide a software build and delivery automation platform that integrates major applications into the engineer’s workspace, such as Git, Jira, Bitbucket, and Artifactory.

Tasks:

Replacement of the legacy JavaScript/jQuery website with a modern cross-platform desktop application.

Desktop client development with Electron, Angular, Typescript, Webpack, HTML, CSS, and Angular Material.

End-to-end tests with Spectron; unit tests with Mocha, Chai, Chai-as-promised, and Sinon.

Development of a Jenkins build step plugin with Java, Jelly, and Maven. Unit tests with JUnit.

Architecture documentation: UML, deployment diagram, use cases, class diagram

Infrastructure:

  • Backend: Microservice Architecture in Golang (Authentication, logging, backend, and more), REST, Openshift
  • Devops: Puppet, Hiera, MSSQL database
  • Monitoring: Kibana, Grafana, Audit log service

Tools: Scrum, Visual Studio Code, Git, Bitbucket, Jenkins, Artifactory, Jira, Confluence, Webpack, Swagger


Frontend Desktop Application (June – November 2017)

Position: Software developer Frontend
Sector: Semiconductor manufacturer
Tasks:

  • Desktop application for simplified app developement and distribution:
    • Proposal on how to improve the existing application
    • Refactoring of JavaScript, jQuery, HTML, and CSS code
    • Separation into modules using the Handlebars template engine
    • Upgrade to HTML5 and CSS3 (such as CSS3 Flexbox)
    • Webpack setup for project bundeling (ESLint, Babel, ES6 support, and polyfills for older browsers)
    • Functional programming (map, reduce, filter)
    • Frontend: jump list navigation, dialogs (jQuery UI)
  • Java backend:
    • Features for license management
    • UI dialog with Swing

Tools: Visual Studio Code, Git, Webpack, NPM, Eclipse, JIRA, Scrum