Menu
Girish's experience
  • Home
  • Services
  • Projects
  • Experience
  • Education
  • CV
  • Blog
  • Book library
  • Photos
  • Independent programmer and coach, Self employed—August 2019 to May 2025

    • Working on integration for OpenProject GmbH to support new functionalities with Element/Matrix for OpenProject project management software
      • Matrix/Element integration
    • Worked on building integration for Mattermost
      • op-mattermost
      • op-mattermost-plugin
      • mattermost-blackjack
    • Coached students on Python programming, computer science and information technology (November 2019 to March 2021, completed)
    • Free/Libre and Open Source (FLOSS) software services
      • Offered freelance support services on behalf of Free Software Foundation (fsf.org) through their directory
      • Preaching free software philosophy to startups and educating them about FLOSS licenses
    Software used
    • Programming Languages - TypeScript, JavaScript ES6, Python
    • Frameworks and Libraries - Node.js, Express, Flask
    • IDE and tools - VS Codium, Android SDK, Postman, Firefox developer tools, Docker
    • Operating system - GNU/Linux (Trisquel 8.0)
  • (later acquired by Cisco), Software Developer—January 2019 to July 2019

    Developed microservices for Cisco WebEx Teams.
    My day-to-day activities included
    • Pairing with other developers in fixing bugs, understanding code and suggest possible ways of arriving at a solution
    • Understand user stories and estimate completion date
    • Coding and writing integration tests for a user story
    • Writing RESTFul microservices to support CRUD operations
    Problems I solved were
    • Any glitch in development environment setup of peers
    • Unexpected code behavior
    Overall impact on product
    • Reduced defects
    • Better performing software
    Software used
    • Programming Languages - JavaScript ES6, Java 8
    • Frameworks and Libraries—Spring Boot
    • Database - Postgres
    • IDE and tools—IntelliJ IDEA, VS Code, Postman, Docker
    • Operating system—Mac OS X
  • Project Engineer - I (Software) - December 2017 to December 2018

    Member of the India Thirty Meter Telescope (TMT) Software work package team co-ordinating the test and integration of the software delivered by the vendor, carry out quality checks, participate in meetings with the vendors and TMT Project Office.
    Contributions -
    • Use IntelliJ IDEA with Java on a GNU/Linux platform to test and debug code for the observatory software.
    • Use Jira for reviewing user stories
    • Worked with automation of test suite using a shell script on GNU/Linux to generate test reports
    • Fixed bugs through Git pull request for the search indexing in documentation
    • Created trade-study like a document for capturing the user interface options for frontend JavaScript-based libraries such as Angular.js, React.js and Vue.js
    Mentions -
    • TMT Executive Software Successfully Passes the First Phase of Preliminary Design Review
    • TMT Observatory Software Infrastructure Progress
    Project information-
    • About TMT
    • GitHub repo
    Software used
    • Programming Languages - Java 8, Scala, Bash shell scripting
    • IDE and tools—IntelliJ IDEA
    • Libraries - Redis, Apache Kafka
    • Agile tools—Jira, Confluence, Kanban
    • Operating system - GNU/Linux (Ubuntu)
  • Teaching Assistant—August 2017 to December 2017

    Contributions -
    • Teaching assistance, evaluation and course administration for Algorithms and Programming course for BS students
    • Create a script for result notification via email for consolidated scores to students using Google APIs
    Software used
    • Programming Languages - C, Bash shell scripting
    • IDE and tools—Vim, GDB
    • Operating system - GNU/Linux (Fedora)
  • Software Engineer—November 2012 to November 2016

    Primary responsibilities
    • Understanding of User Requirements Document (URD) for a subsystem and eliciting functional requirements
    • Creation of Software Requirement Description (SRD) for capturing functional requirements
    • Depiction of operational scenarios using flow charts and outlining data dependencies between subsystems
    • Database schema and tables design
    • Design and development of Graphical User Interface (GUI)
    • Client side scripting using JavaScript and JQuery for rendering data obtained from services and to make Asynchronous Java and XML (AJAX) requests to fetch data through Representational State Transfer (REST) web services
    • Providing analytics to visualize information by customizing plugins such as JQPlot for depicting graphical information using bar and line chart
    • Debugging of client side code using Firebug extension for Mozilla Firefox
    • Coding of RESTFul web services for create, read, update and delete (CRUD) operations using Spring MVC, Java EE and testing using a REST client
    • Usage of Hibernate Object Relational Mapping (ORM) and Java Persistence API (JPA) for Data Manipulation Language (DML) operations
    • Unit Testing of developed modules using JUnit
    Key Contributions
    • Development of reusable JavaScript modules (Modular JavaScript Design Pattern) for a given functionality using Asynchronous Module Definition (AMD) and loading using Require JS to improve web-page performance and code maintainability
    • Usage of an Underscore JS framework for coding of reusable HTML templates which can be rendered on the fly. This helps in avoiding typo errors due to single or double quote mismatch in JavaScript code, which is hard to debug. It also provides separation of HTML template from JS, thus improving code maintainability
    Software used
    • Programming Languages - Java 7, JavaScript
    • Frameworks and libraries - Spring MVC, Hibernate ORM, Apache Maven, JUnit, jQuery
    • IDE and tools—Eclipse IDE, Microsoft Visio
    • Server - JBoss AS 7
    • Database - Oracle 10g relational database
    • Web Browser—Firefox (with Firebug)
    • Operating system—Microsoft Windows 7
  • Home
  • Services
  • Projects
  • Experience
  • Education
  • Blog
  • Book library
  • Photos
  • CV

Get In Touch

  • girishm at posteo dot net
  • GPG key

Copyright © 2019 to present, Girish M, Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License. The source for this web-page can be found here. The logo/icons have been borrowed from their original websites. Please email the owner of the website for removal in case of copyright violation.

© Untitled. Design TEMPLATED. Images Unsplash.
JavaScript license information