I am a final year undergraduate student from India from a highly reputed university, studying mechanical engineering. I don't have a lot of interest for it anymore and have a less than stellar (6.9/10) gpa. That being said, I am highly interested in computer science and even though it is not possible for me to change my major I am doing courses in that field as open electives. My summer internship is also related to CS and I have done multiple projects related to it. Is it possible for me to get a job at a software company after graduation? If so, would it be possible to do a masters in computer science after working for 2-3 years?
Totally possible. I suggest starting your job search by targeting a junior software developer position at an engineering firm who creates and maintains their own software, of which there are many. You're mechanical engineering background will be very attractive to them, and could set you apart from other applicants.
I myself studied mechanical engineering and work as a software engineer. There is only a single line on my resume mentioning mechanical engineering, but in interviews it's something that people always seem interested in. With a few years under your belt, there will be nothing preventing you from leaving the engineering field all together for another industry if you wish.
Although I wouldn't say its necessary to have a masters degree in the software field, a CS masters with an ME bachelor degree is a VERY strong combination and a totally reasonable path to explore in my opinion.
PS: Making the switch was the best thing I ever did for my happiness, and it turned out to be an awesome career move as well. Good luck!
I know people with Bachelor's Degrees in Geography working in Accounting offices. Oftentimes, the simple fact that one has a degree makes him/her attractive. Put that together with an internship in the field, it's definitely possible.
That said, you may have to take a borderline job doing "not quite" what you're after to get your foot in the door of a company and prove yourself, then get promoted or move around a bit internally.
My son graduated with a degree in Insustrial Engineering and couldn't find a decent job in that field, so he took a job in IT working with data - kind of a data analyst with some programming. He also took some CS courses as electives. So this is not impossible. A Master's in CS would depend on the school you want to go to, some have requirements that you have a CS degree, some don't.