Internship Description

Da Hua Chen, Nithya Kocherlakota and Yiwen Xiao, ‘19SEAS, interned with Social Solar, an organization founded by Columbia University graduate students from the business and engineering schools in 2017. Social Solar is a trusted online platform that matches individuals and businesses seeking clean energy alternatives with vetted solar energy suppliers. The company helps solar energy customers make informed decisions by analyzing their energy usage and assessing their energy needs. Da Hua worked on enhancing the company's AI utility bill reader and rating and decision algorithms, wrote and integrated an API for property technology platforms, and tested various channels and platforms for gaining traction. Nithya was responsible for energy analytics using Social Solar’s machine learning Utility Bill Plugin. She was also involved in developing a product roadmap for Social Solar to gain a competitive advantage and establishing partnerships with real estate portfolios looking to move to green energy alternatives. Yiwen worked on real-world projects for the sake of enhancing Social Solar’s energy platform. Her position duties involved enhancing current decision-making clean energy algorithms, performing energy analytics using the AI Machine learning Utility Bill Plugin and developing a product roadmap. Yiwen also engaged with Solar customers/Solar suppliers to better understand how energy software meets their needs.

I worked primarily on two projects: web application integration with various utility companies and text extraction using OCR (optical character recognition) and basic parsing with utility bill documents. The major utility companies that the engineering team and I worked to integrate with the existing web app were Con Edison and PG&E (Pacific Gas and Electric). We worked on connecting the backend server with each of the companies' web APIs in order to obtain access to customer data. This involved implementation of the workflow procedures of each of the utility companies, which required the development of specific web pages and procedures following standard protocols (e.g. OAuth 2.0) and in accordance with the guidelines under the Green Button Initiative.

The other project I worked on was a utility bill reader program to read utility bill files. The program takes a collection of utility (electric, gas) bills in pdf format and extracts all of the information from them into a tabular format (csv format). Moreover, the utility bill reader performs various error checks for billing mistakes, such as overlapping billing periods

The projects fit with Social Solar's mission to promote clean energy usage and combat the environmental consequences of using non-renewable energy. Social Solar is an advocate of the UN's 17 Sustainable Development Goals, especially #7 - Affordable and Clean Energy and #11 - Sustainable Cities and Communities. By helping to integrate the web application with various utility companies, the company will have access to residential and commercial customers across the state (and eventually country) who may wish to convert to using clean energy. The bill reader will be an integral part of the detailed analytics that Social Solar will provide for customers and will help them save money on their electricity and gas in the long term.

I was able to apply my proficiency in programming that I've obtained as a computer science student to assist in the development of Social Solar's web application. Because of the prior knowledge, I was able to learn some frontend and backend development skills and tools relatively quickly so that I could contribute in the update of various sections of the existing codebase that previous developers had worked on. I was able to apply the knowledge from the machine learning courses that I've taken to the data analysis tasks that were relevant to the company's needs, such as energy usage prediction and optical character recognition of utility bills. I applied different models that I've studied in class to public data sets, which helped me to understand the models at a higher level and see data-analytic trends from real-world energy data. Lastly, the knowledge and application of algorithms and natural language processing (NLP) helped in the implementation of the text parsing and extraction tasks of the utility bill reader project, allowing it to come together as a finished product.

Some challenges I faced were getting acclimated to the work environment and workflow procedures, learning to work as a team with my coworkers, and planning for projects. This was my first experience working in a startup/incubator environment and it was a very collaborative and social setting that I was not used to. In addition, I was so used to working with a more rigid schedule so it took some time to get accustomed to a more flexible and independent workflow. I found it difficult to plan each day because very often, each day of the week would be different in terms of the content of the work I was doing. This was the nature of early-stage startup work. I also had to learn to work with my coworkers in a way that would be more productive than working independently, which required an assessment of their skills and capabilities, and how my knowledge and set of skills would work in conjunction with theirs.

The major takeaway from my experience at Social Solar is that being successful in a startup environment requires a lot of patience and trial-and-error; it is not just a hub for innovation and creativity where every new idea becomes a reality. Often there are many failed attempts before a single successful one, and one needs to be persistent when pursuing new connections and leads. This experience in working at an early-stage renewable energy startup has given me a better understanding of the internal operations and aspects of running a company in addition to the technical and practical skills that were needed to work with real-world data and software. Another takeaway is that you need to be persistent to be successful. It is often the case that the initial avenues you try lead to dead ends, and it's important to continue pursuing new channels and opportunities and not to leave it to sheer luck. Overall, from this experience I learned how to better interact with people and make connections, how to work on technical problems independently and collaboratively, and how to apply technical skills to real-world problems.