Avatar of Julie Quintero

Julie Quintero

Machine learning/ software engineer
Machine learning/ software engineer ·
Migrated
from
ReduxRedux
to
ReactReact
at
()

Originally, we were going to use Redux and redux-observable as our React state management+middleware solutions. However, we have decided that this may be overkill, because our global state is minimal, and the state is not shared much between pages. We will instead use the built in React Context functionality to manage state.

READ MORE
11 upvotes·2 comments·12.8K views
Pouya Ataei
Pouya Ataei
·
March 8th 2021 at 12:48AM

smart decision! if later on you guys decided you want to handle the global state better, apollo client and client side schemas is the way to go!

·
Reply
Ezra Fayet
Ezra Fayet
·
March 13th 2021 at 5:51PM

Great move, even the creator of redux advices to go for useContext in most regular cases. If you look for another replacement I recommend checking recoil. It is also from the facebook team (I think ?) and it is said to store states very efficiently !

·
Reply
Machine learning/ software engineer ·

Python is the preferred programming language for data scientists, with extensive libraries that aid in all aspects of data science including NumPy, pandas and scikit-learn, with it having the largest amount of machine learning libraries. As it is the most widely used language for data science, hiring in this area will be easy. As our backend will be using Django API which is optimized to be used with Python, thus making it the best choice for integrating the backend.

We will be using pytest for our different unittest and integration test for our Django and Python-based code, giving us sufficient coverage for our backend.

READ MORE
9 upvotes·8.1K views
Machine learning/ software engineer ·

We've chosen Sentry for our exception logging. Both our web app and mobile app are connected to sentry, which allows us to access all of our logging in one place. Our developers are able to see error reports, crashes, user browsers, and more, all in one place. Sentry also seamlessly integrates with Slack and GitHub.

READ MORE
5 upvotes·5K views
Machine learning/ software engineer ·

We will use Flutter for our athlete-facing mobile app. Flutter is a cross-platform app development framework, which boasts native performance and allows for creating beautiful, fluid user interfaces.

React Native may sound like a more appropriate option given our choice of frontend technologies, but we foresee little to no feature overlap in the web dashboard and mobile app. Ease of use, performance, good user experiences are key to encouraging athletes to use our app, something which React Native makes difficult, and is where Flutter excels.

We will use the test and flutter_test packages to test our Flutter app

READ MORE
4 upvotes·105.6K views
Machine learning/ software engineer ·

We will write our frontend in Typescript, which brings strong types to the world of Javascript. Defining and enforcing types in our code will decrease bugs, allow for quick refactoring during early development stages, and increase code readability, which is especially important when working in a team.

READ MORE
4 upvotes·2K views
Machine learning/ software engineer ·

Our frontend will be built using React, an efficient framework for building interactive user interfaces, which is trusted by the world's leading tech companies. React's component-based architecture will allow us to reuse common elements throughout our interface, greatly increasing development speed. It is widely used our Our frontend will be built using React, an efficient framework for building interactive user interfaces, which is trusted by the world's leading tech companies. React's component-based architecture will allow us to reuse common elements throughout our interface, greatly increasing development speed. It is widely used in the industry and thus has a large community supporting it online.

We will use jest and react-testing-library to test our React components.

READ MORE
3 upvotes·4K views
Machine learning/ software engineer ·

Our database will be built using Postgres, an open-source resource, that will allow us to modify and implement to our specific needs and provide easy scalability. Multiple companies and individuals have contributed to Postgre and the large community ensures that bugs are fixed without delay. The industry has widely adopted it with top companies like Uber, Netflix and Instagram use it, thus making it easy to hire for in the future.

We will use pgTAP to run unittest for Postgre.

READ MORE
3 upvotes·2.6K views
Machine learning/ software engineer ·

We will deploy our app using Heroku. It has built-in support for Django, and integrates directly with git. Heroku also scales automatically to meet demand, in case our platform experiences major growth in the future. It links well between both our backend tools (Python, Postgre and Django) and our front-end tools (React, Flutter), thus making it our preferred choice.

READ MORE
3 upvotes·2K views
Machine learning/ software engineer ·

We will use Microsoft App Center to deploy our mobile app to testers. With App Center, we can avoid the cumbersome process of using TestFlight, which requires an App Store review for each build that is submitted. App Center also allows us to continuously deploy the latest version of our app to testers, and automatically manages provisioning/signing so that testers' devices (UDIDs) don't need to be manually added by us.

READ MORE
2 upvotes·4.7K views
Machine learning/ software engineer ·

Sumo Logic is our choice for general logging. Since our web application is being run on Heroku, one of the included add ons was sumo logic, automatically collecting all of our logging from our app. It allows us to monitor and troubleshoot in real time and act on threats instantly. The ease of integration into our tech stack was the main driver behind our choice

READ MORE
2 upvotes·4.3K views