About Me :
I am HARSH PRATAP SINGH, a Freshman (1st Year Student) at the Indian Institute of Technology, Kanpur, pursuing my Bachelor’s in Earth Science/Geological Informatics (I took some Computer Science courses out of interest).
I am currently interested in Full Stack Development and Infrastructure (DevOps/SRE/Platform Engineering), so in pursuit of my interest (and employment), I have already started working on my skills. Currently, I am doing Google Summer of Code 2023 under the Jenkins organization. In future, I plan to get myself involved in other Open Source programs as well to be as skilled a professional as possible.
How I came to know about the organization?
While I was browsing through different remote-first (because I want to travel the world ) companies which embrace Open Source (as I am an absolute lover of communities and will try to become a maintainer of Jenkins plugin after Google Summer of Code soon) so that I can apply in them for Internship or Full time, I came across OpenCraft.
I found the philosophy and values of OpenCraft very appealing, and thus I read more about the company through its comprehensive HandBook. I looked at the company’s codebase and tech talks at edX a bit and was intrigued.
Why approaching you guys?
As I want to travel, a remote-first Open Source company is my first choice as an employer. Now I have three options available to me for jobs :
- Get a typical job at a top tech giant. - Last option if nothing works out. It’s not that difficult as they filter candidates only based on Whiteboard questions and behavioural rounds, which I should be able to ace after working hard on them, not focusing significantly on real-world skills and experience, which is not what I want. I want my approach to be like 35% theoretical Computer Science and 65% real-world experience. No travel and, most important problem, no Open Source is a big con here for me :(
- Get a job at a niche, non-remote Open Source startup - a good enough option for me! I can be good at a niche in technology that companies are hiring for and get hired. The problem is the sacrifice of travel, but at least I get Open Source.
- Get a job at a fully remote distributed Open Source company like GitLab, Automattic or OpenCraft - most lucrative opportunity for me personally! As these companies are already established, I will learn a lot in the company and broaden my horizon of knowledge. I will be able to learn something about everything and everything about something. As mostly senior developers join in these companies, it will provide me with accelerated learning and even improve my Leadership skills!
Now it was mentioned in the Handbook that Junior Developers are not hired in the organization as they may not be able to cope with Remote environments, and their Quality and efficiency of working may not be sufficient. But it was also mentioned that
We sometimes make an exception for a prolific open source contributor who has demonstrated great technical and social skills in his contributions, and thus already shows a senior profile.. I am on a journey to become that prolific developer in my College life (by contributing to different Open Source communities in a Remote environment), and of course, I am working hard on it! I am also assured that I won’t be discriminated against based on my Degree if I possess robust Computer Science fundamentals.
Also, being an Open Source Developer is everyone’s dream job, right?!
How I plan to make myself capable of joining OpenCraft?
I know it sounds overconfident/too aggressive to get into a Senior Developer position right after college, but I think if I work hard enough, I can pull it off! (or maybe at least become a Mid-level engineer so that I can join after a year or two of work experience)
With reference to this JobAd I am already contributing to Open Source (learning JAVA, Docker, GitLab unit functional testing and more currently in Google Summer of Code), I have worked with Python but to gain real world experience will contribute to Python Open Source codebase with Django. I will sharpen my full-stack skills too by contributing to Open Source Projects involving React, TypeScript and Go with SQL databases. All the additional skills that are mentioned in the JobAd related to DevOps, I will try contributing to some of them and to gain confidence on them I will also try to make a project showing my skills required for the job. If I get the opportunity to visit/speak at conferences like KubeCon, cDFcon+GitOpsCon, Open eDx confrence and other international conferences I will try that too as OpenCraft employees have to give technical talks every year. Maybe will even try to contribute to OpenCraft codebase to judge myself before applying! By the way I am not talking about silly contributions here, actual useful code contributions!
I plan to apply to OpenCraft during my Final Year (4th year) because it will provide me freedom in terms of Salary as well as serves society positively by improving the EdTech sector.
So finally, the main question after reading all this - How can I ensure my employment in OpenCraft upon graduation? Does the interview process include WhiteBoard problems (Data Structure and Algorithms, System Design and other CS-based questions like other organisations) other than Trial Project (fantastic interview strategy, I must say!)?
To travel, I need an international salary. Can an Indian (who wants to travel internationally) get paid according to international standards (not necessarily San-Franciso level salaries as they are inflated)? As its mentioned in the Handbook,
if two people produce the same thing, it shouldn’t matter which country they live in?.
What are some cons of working in the company, if any? Any suggestion/advice you have for me? Of course I will apply to other companies as well as I will be highly skilled developer till my graduation if everything goes as planned.
Thank you for reading this. Appreciate it!