How I Presented about My Machine Learning Project to a Team Full of Software Engineers
TL;DR: Check out the demo I made it while I was interning at SAP. It is a Machine Learning model to predict the likelihood of a company leaving our cloud contracts or not. It serves as a platform to practice machine learning skills as well.
Over my internship at SAP, I was asked to give a small proof of concept regarding my machine learning application and put my skills to test. Now there are several levels to this sentence: I am still learning about machine learning and I am nowhere near an expert. Even though I am doing research about it at school, things can still go wrong when you do a presentation.
Prep is very important
When I was asked to do the presentation, I wasn’t prepared for anything. I was just discussing different ideas on how to incorporate machine learning and some open source technologies like keras.io or Tensorflow around a business case. Once this idea is liked, I was asked to do a proof-of-concept. I decided to use SAP cloud customer churn data. This was really hard to get so I had to go pull some banking dataset and adapt it for SAP for the sake of argument it was not that bad since we were more interested in what machine learning could enable the company. I was planning to do a binary classifier on multiple features regarding SAP Cloud Customers. So, the model is trying to predict whether a company is likely to leave the SAP Cloud Contracts or not. The output is a yes or no, and the inputs are several features related to the company such as revenue, feedback, product counts and types. and Once I got the green flag, I decided to use good ol’ React. This time I wanted to experiment with different techniques though. So, instead of using Nodejs, I decided to use Python for the back end, specifically Django. Some people love it, some people don’t like it. In my opinion, using Node.js with React is more organic because it is not a different language. but at the end of the day, it got the job done.
Be confident
It is very easy to say this. It took me less than 2 seconds to write it. It will require a life time if not more to actually have it. I wasn’t sure if I could finish the project in about a month. A month was the duration that was given to me. Some might say that a month is a pretty long time for a PoC but in my opinion, to my understanding, it was fine for me and my team since this whole experience was experimental. So, I finished the front end with React, backend with Django- Python and I used a sqlite3 database. Sqllte3 is a very lightweight database tool. I have used Postgresql, Redis and MongoDB before which would require me to do a server connection. But a sqllite3 database is a just a file that you store on your local file system. There is no communication over a network.
One week before the presentation
About one week before the presentation, I was mostly done with the project. So, I decided to deploy it to Heroku which is a cloud platform bought by SalesForce. It took me some time to configure and make it production ready because of Python and JS bundle. Also, I used webpack and everytime they say zero config I get annoyed, because it is false advertisement. I was able to deploy it about 2-3 days before th presentation day and I started to do my slides.
One day before the presentation
I sent out my slides to my supervisor and he was able to give me some feedback. I was told to do two sessions, one for general intro to machin learning and second session where we study my code and see how my code had the design choices it had.
One hour before the presentation
I was a little bit nervous. I was told that my presentation was going to be recorded. This didn’t help either.
Presentation
I finally made the presentation and people seemed to like it. It was full of full time engineers, Software devs, my mentor, my boss, and some poeple online who joined from other teams. Because I think the meeting and my presentation was advertised as Intro to Machine Learning Info sessions, so the focus was more on the training which made me look like I was the subject expert. It created a little bit pressure. But it definitely put my name out there. I put the recordings, my code and my presentation to SAP JAM which is our way of content management. I won’t be able to show the content because of proprietary content existence and regulations., but if you want to see the demo, it is here:
Check out the demo