Small Guidelines For Budding Developers


Contributing On Open Source
       By                           Syam Sundar K
 How to get Started with Open Source.!?
So you’ve been a developer for so long, doing all the stuffs in your local machine and gazing your work by yourself. Well, It’s time to make other developers gaze your work. Firstly, if you are familiar with Open Source and if you are aware of the ins’ and outs’ of Github this is not for you. This is mainly for developers who are about to make their entry into open source.
Learn to use Git and Github
There are a number of resources online that can help you learn git easily and quickly. Knowledge on these is quite essential for contributing to open source. Make most of the project that you do available on Github so that you can showcase your skills.



Learn to setup projects
The most important and the first part of getting to contribute to an open source project is to set up the project that big organisations run onto your local system. Most of the time README.md or Wiki in that repo may come in handy. If you come across difficulties in setting up the project, ask for help from that community of people in that organisation.


Be wise in choosing the Project to Contribute
For a single organisation there may be a number of repos of different genre. Say for an instance, a product of that organisation may have an android app, a progress web app and/or an iOS app. Me being an Android Developer will go for contributing to the Android part of the product because that is where I can show my skills off.
To be precise, choose a repository that suits your skill set.
I’m not saying if you are an android developer you shouldn’t contribute for web apps or iOS or apps of any other genre. I’m just saying go for where you can shine.


Start Small
Okay, now it’s time to code and actually contribute to a project, where shall I start.!? Well, first start by raising issues, to raise issues you should actually use the product and find fault with it, it’s easy right. Yeah, find fault with that product and raise it as an issue.
Remember: There may be more than hundreds of open issue in your project repo but make sure the issue that you raise is not raised by any one else before.
If you are confident that you can solve an existing open issue just fork the repo and commit on the changes on the forked repo and click on Make Pull Request button and BTW, while describing your pull request make sure to specify the #issue_number this will specify the issue that this PR fixes.


Don’t be afraid
Most of the people I see have skills to contribute to Open Source aren’t because they think
Oh, this is a big project this has 1000+ commits, I’m no way near it. This project contains contributors who are geniuses who’ll mock me on my PRs.! so, I’m not gonna do it.
Actually, People who are geniuses don’t mock others In fact, they appreciate others contribution, they always give hands for the budding developers. So, stop thinking and go do it.!
Remember : Every master was once a beginner


Don’t get Disappointed
If your PR get any changes or if your work is reviewed and closed directly by giving some comments don’t get disappointed. Changes are only to make the code much more consistent and optimised before merging into the main repo — nothing bad about it. If your PR is closed, read the comments given before closing the PR — chances are those changes may not me needed at this time or those features may be preserved for future releases.
Remember : First step is always the toughest, if you’ve crossed it, the rest is dust.


Be Humble
You may know a lot of things but be humble to developers who sought help from you. Be polite while commenting on a PR or on an issue. Being polite shall invite them to contribute more and more. So, it’s a win win situation for both the contributor and to the community.
No matter how much you learn there is always something to learn. So, be humble
Be open to take in others suggestion as well. Listening to others will only makes you stronger.


Learn to Learn
Doing changes in the code and giving out PRs from the concepts you know is good but always learn something new in every PR that you give out — this will increase your self-confidence and this is a strong point to show that you’re striving to improve yourself.
If it doesn’t feel challenging to you then you are still in your comfort zone.
Try to push yourself out of it.


Voila,
If you follow this you’ll be a successful open-source contributor. I’m not saying strictly follow this. Breaking the rules is good, so go for it. I’m just a developer speaking out my views and thoughts through my experience. So, now say,
It’s a Developer’s life for me, savvy.!? ✌🏻


More where this came from
This story is published in Noteworthy, where thousands come every day to learn about the people & ideas shaping the products we love.
Follow our publication to see more stories featured by the Journal team.




Pressure Out The Placements 
                                                           By 

                                          Anirudh M

GSoC '18 with @CNCF | GSoC '17 @HaikuOS | SWE Intern @HasuraHQ

 

Following is applicable only for Product Based companies like Zoho , Amazon, Google , Coda Globals, Zilker and so on. There are two types in which a product company takes in people.

Type 1
By conducting web development rounds or advanced hackathons and so on, Actually companies like juspay does that. In these rounds, you'll be provided with internet connection and you have to google and complete the stipulated task. This maybe web or android or even complex task. To clear such a round, you'll need previous project building experience and know how to google and how to debug and learn from stackoverflow. Just these skills are sufficient for one can get through these rounds and then after this it's just face to face interview with questions from academics or they'll also ask you to demonstrate how you'll build an end to end application. This round is called System design round, you can google it, you will get many different examples which you can try on. Then the final HR interview. These companies usually pay above 6lpa and even upto 30lpa. Work will be nice in office, and you will find smart peoples around you. if one is passionate about CS, this is the best option.

Type 2
Another type of recruitment is like how Zoho conducted, companies like Google, Amazon conduct the same way too. They'll start with apts, then give a question paper with 4-5 questions, it'll have questions related to data structures and algorithms. You should write in paper the pseudocode or in whiteboard. Example questions: build a queue using two stacks, print top view of a tree, find shortest path in graph and etc. You'll be given a coding round and maybe some algorithm coding round too. These companies do not have a fixed style of recruiting but you are strong on data structures and algorithms, you can clear even Google. They won't ask project experience, but you must be knowing CS fundamentals from OS, DBMS, CN.
So from your perspective, if you start preparing for the first type of companies, it is that you have to learn JavaScript frameworks now and to build projects, and try to build some hand full of projects. If  you apt for the second type, then start with data structures and algorithms , practice problem solving and just revise fundamentals of CS .Companies which ask project experience may reject but surely Zoho, Amazon testing in our college won't ask project, so you clear those for 100%.
Start solving problems in hackerrank and learn algorithm in geeksforgeeks and revise CS concepts. If you do these sure you can get in Zoho, Amazon testing. But if you solve problems and leave it aside, you'll forget and lose touch, that's what happened to me now. So doing it regularly, even before day of campus drive is important  only so you'll be in a flow to solve the problem.

Recommendation
GeeksforGeeks + HackerRank + CS fundamentals + expressing confidence during interview. These 4 things can sure shot get you a job. I've personally experienced and also prescribing with the collected experience. Others may have different opinions,  this is what I observed in the tech industry.

Never It’s Too Late To Begin, Start Today

Good luck! 😌👍🏻







                                                                         Edited And Compiled

                                                                   LINGESHWARAN R


                                                                                                 Front End Developer | Pythonist




No comments:

Post a Comment

Pages