Interview with Shubham Gupta
Github: @shubham3121
Where are you based?
Lucknow, India.
What do you do (i.e. studying, working, etc.)?
I’m currently working as a Software Engineer at OpenMined.
What are your specialties (i.e. Python development, Javascript
development, community organization, etc.)?
I primarily focus in developing back-end and machine learning applications in Python. Although I don’t have a specific choice for frameworks, I have spent a good deal of time developing in Django in my previous roles. Apart from that, I have had a fair amount of experience with DevOps (mainly AWS and Azure).
How and when did you originally come across OpenMined?
I first learned about OpenMined back in 2018, when I was looking for Open source projects to contribute to in Machine Learning. They were building PySyft using Unity Game Engine so you can run DL models on any GPU in a democratized fashion. This intrigued me and looked like a perfect solution to one of my problems: No CUDA-based GPUs.
I contributed for a while but couldn't keep up with that and other stuff at that time but was always fascinated by OM's mission and its community and would check from time to time on what they were building. Jump forward to March 2021, Andrew tweeted about needing help with building mock APIs and I thought maybe I could help. I DM'ed him and got drawn towards his strong desire, personality and the mission.
What was the first thing you started working on within OpenMined?
Back in 2018, I think I started by picking a few Good First Issues and probably adding some tests. Although, that code is surely deprecated now. And in 2021, creating notebooks which demonstrated some mock APIs for PySyft from the perspective of a Data Scientist.
And what are you working on now?
Currently, I’m involved in abstracting and refactoring the PySyft APIs into less complex paradigms so it is not only easier to use the API but also helps increase developer velocity while making the infrastructure easier to scale.
What would you say to someone who wants to start contributing?
To start with joining the OpenMined Slack channel and introducing yourself. The community is very warm and welcoming and there are many people to guide you based on your interests and skillsets.
Moreover, I would just start by setting up the stack by following the documentation and resources available on the PySyft repository. Experiment with different APIs and likely you will be able to find bugs to report and possibly create fixes for the same. Lastly, feel free to post any question on #support on Slack.
Please recommend one interesting book, podcast or resource to the OpenMined community.
To anyone building software I would recommend to read Head First Designs. The book uses Java as its main language but there is a really cool alternative website for Python as well. If you’re interested in startups or entrepreneurship, I would recommend the book Zero To One by Peter Thiel.
Twitter link: @itss_shubham