I worked at a large company for several years before I decided to make a change. I had heard about Commit and the community and culture they were creating, and was immediately interested. I was aching for a new challenge. I reached out to a friend who worked there. Shortly after the introductions and meetings, my starting date was confirmed and the change I was looking for was on its way.
In the first few hours of my first day at Commit, I met a lot of the senior staff and other Engineering Partners, two of which were my Onboarding Partners. They helped me get settled in and answer any questions or concerns I had. One of the major tasks in the first week as a Commit Engineer is the Hackathon Onboarding Project. The idea is to build something beneficial or interesting that you can demo to the rest of the company. It sounds simple at first, but trying to decide on a project to showcase to a new company can be intimidating, especially when the options to pick from are, well, nothing—you can work on anything you want.
Picking a project
I had a few ideas, and I narrowed them down to a Google Chrome plugin and a simple web app that tracks top-performing stocks, utilizing web sockets and displaying percentage gains close to real time in a graph. I was motivated to learn different technologies and programming languages, to get away from what I had been working on before, which was primarily PHP. Both ideas provided me with opportunities to do so. After a quick chat with my onboarding partners, they helped me decide on the web app, which I call Stock Winners.
Stock Winners uses the technologies I was interested in learning, specifically React and Node.js. The app shows the 20 stocks across all global stock exchanges with the greatest percentage gains for the day. I got the idea from my interest in the financial markets and investing, but the commotion that GameStock was creating in the media brought the idea to the top of my mind. When it comes to the stock market, they say “Ride the tide.” (I think.) The first step is knowing how to spot a big wave.
Building the app
I chose React and Node.js for the tech stack because of their popularity with startups and my unfamiliarity with them. My background is in procedural programming, so the architecture of Node, with its asynchronous event loop, is new to me. But I was eager to dive in and learn. This tech stack seemed ideal for an app in which data is pushed to the client as the server retrieves and parses it.
In addition to learning a new tech stack, I had to find an API to provide the financial information required to deliver the app as intended. Finding a reliable source for this real-time data was one of the major roadblocks when building this app. I scoured many API providers and sent a lot of emails requesting trials, and ended up choosing a Polygon API that was intuitive, easy to use and relatively cost effective. The Polygon API offered a socket option to retrieve data, but I decided to use the REST API. I chose the REST API because I’m more familiar with it at the moment, but plan to investigate the socket option in the future.
If I were to continue to develop and evolve this app, one area to explore would be using the results and market information to automate trading. There are a lot of legal and regulatory limitations involved, but the technical challenges and considerations would be interesting, including:
- Finding patterns or using short- and long-term historical data to try to predict a stock’s performance and trigger a buy or sell action
- Establishing customizable risk factors and other preferences to inform trade decisions
The project is relatively simple and straightforward, but I took on technology that was new to me to build a tool I was interested in. It’s not conventional when starting a new job to be given such a wide-open opportunity to explore new ground and learn something new. It’s a luxury, and it definitely took me by surprise. I learned a lot from the experience and plan to share what I’ve learned with the Commit community.
We hire Software Engineers to build their careers with promising early-stage startups. Join the waitlist today!
Andrew Lukonin is a Full-Stack Software Engineer with four years’ experience. He enjoys solving complex challenges and exploring ways that technology can simplify, streamline and improve daily life.