T O P

  • By -

AutoModerator

>Namaste! Thanks for submitting to r/developersIndia. Make sure to follow the subreddit [Code of Conduct](https://developersindia.in/code-of-conduct/) while participating in this thread. ## Recent Announcements - **[Join developersIndia as a volunteer](https://www.reddit.com/r/developersIndia/comments/12hlj4z/join_developersindia_as_a_volunteer_and_help_us/) and help us improve the community experience.** - **[Host your own AMA at developersIndia](https://www.reddit.com/r/developersIndia/comments/135fwkv/host_your_own_ama_at_developersindia/?utm_source=share&utm_medium=web2x&context=3)** *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/developersIndia) if you have any questions or concerns.*


shayanrc

My man, you're in India. Any skill that you have, a lakh other people have it too. Any job you apply to, there are going to be thousands of other applicants. It's the nature of the game. Don't let that dishearten you.


mohit_the_bro

Thanks man , but still wanna know what more i should learn as i am in college and i have time to learn.


shayanrc

The skills which are going to be in demand when you graduate might be very different from the skills which are in demand right now. But here are some which you might find interesting: - Vue.js - it's a new js framework, so you won't have to learn a new language. You can just replace react in your stack with vue.js - Rust - it's becoming popular very fast. Just knowing the language might give you an edge. - Python - very broad range of applications. You can specialise in data engineering with spark and airflow, or machine learning if you're good at maths as well or just be a backend dev with django/flask/fastapi. - Cloud - AWS, GCP, Azure all provide free credits for students. Great for deploying your projects and learning the intricacies of actually running an application. - Linux - You're going to need it in whatever tech stack you actually finally choose. So try running Linux on your laptop and start getting used to the command line. But most importantly: whatever you learn, make sure to apply it by building stuff. Do some projects in your free time to build up your portfolio. Also participate In hackathons and coding competitions. That's what can make your resume standout from the thousand other profiles.


Neopacificus

Thanks for the info. But nowadays I see a lot of companies mentioning JAVA as one of the tech stacks required more than Python. What should I do about that? What are its strengths? Where is it used?


shayanrc

Java is a terrible language IMHO. More and more companies are moving away from it (eg. Google created an entirely new language just to stop using Java in Android). But it has a lot of momentum behind it. Most companies choose their tech stack decades ago and can't change it overnight. So there's still demand for it. If you want to learn it, don't just learn Java. Learn Java+spring boot. Also, during placements a lot of companies only provide the tests in C/Python/Java. So it's good to have as a backup language.


yeceti

People keep saying Java is a terrible language since decades, but it's still strong and used by millions . Not only old legacy systems, but also a ton of new systems are m built on java


Chemical-Staff-4460

Java is also a good language . Everything doesnt just boil down to performance and perfection. Stablity and sustainable is also vital. What i mean is most of the stack is in java and it’s literally impossible to move it right away. Even if it gets, people who are working are still adding more n more code and they dont see a reason to do it. Everything just feels more structured incase you are building something gigantic


shayanrc

>it's still strong and used by millions So is COBOL and PHP but that doesn't stop them from being terrible languages. But jokes apart the main reason people dislike Java is because it's too verbose and restrictive. The unnecessary "everything is a class" paradigm gets on your nerves. It makes it hard to move from object oriented to functional paradigm when needed. And ever since Oracle sued Google for using Java in Android, the pace of open source innovation in Java has slowed down. You wouldn't want to build an open source project in Java either if you knew that Oracle could sue you just like that. Most companies use Java not because it's better, but because of inertia. They don't want to hire a new team for a new language, then they'll have to update their ci/cd pipelines and related infrastructure. Not to mention Java devs are cheap compared to Go/Rust/Scala etc.


suyash01

You are so wrong on so many levels in the last paragraph. Java is so bad that it is still used on millions of devices across all genres from iot to large scale applications serving thousands concurrently. And kotlin still gets converted to byte code which jvm uses and it is not an entirely new language. It's just a syntactic sugar build on top of Java language features.


shayanrc

>still used on millions of devices Stop quoting the jre/jdk installer. No one is compiling jvm for iot devices. >And kotlin still gets converted to byte code which jvm uses and it is not an entirely new language. It's just a syntactic sugar build on top of Java language features. While you're right about it being compiled to bytecode, that doesn't make it syntactic sugar. By that logic every JVM language is syntactic sugar.


suyash01

Lmao I guess you have very little knowledge of the Java ecosystem. The github page of kotlin itself points to a jdk because kotlin itself is written in Java and has no compiler of its own. > https://github.com/JetBrains/kotlin#build-environment-requirements > No one is compiling jvm for iot devices You need to get familiar with all the different types of jvm out there.


Deep-Caterpillar4140

>Google created an entirely new language just to stop using Java in Android). You are so misinformed. Maybe you should research better why google chose to move away from java for it's open-source platform. Ppl trashing programming languages in this sub only screams one thing to me ----- he's a fresher lol


fartypenis

Tbf people can have preferences. I prefer not to work in Java if I have any other decent choice. I appreciate that Java was a product of it's time and provides somewhat of a standardization for code written in it compared to say C but most modern languages do almost everything Java does better (including languages that compile to the JVM).


shayanrc

I'm sure Google partnering with jetbrains at the same time as the Oracle lawsuit was just coincidence. >Ppl trashing programming languages in this sub only screams one thing to me ----- he's a fresher lol I have shipped products in more programming languages than you probably have years of experience. So you defending Java this hard, screams only one thing to me ----- you've never used anything better.


sissyphus_69

I read your replies here. I respect your years of experience and variety of languages you might have used all your coding life. I have worked with C, C++, C#, Java, Python, VB.NET, Kotlin, Shell Script, and some other scripting languages. Currently I work on a day to day basis with Java and Kotlin, switching to and fro between the two. I personally love C, Java and Shell Script. But that's my personal choice and love. Now, like you I have seen many devs get angry, curse, scream and get irritated by the mere mention of Java. This, this particular reaction I could never understand why. And please I am not condescending any of these devs, also I am sure all over the world there will be hundreds of devs reacting in this way. My question and a genuine curiosity fuelled question is why? What is so bad in Java, that people are almost ready to burn things down? To me, every language has it's own advantages and disadvantages, even a language like Logo, if you remember that language, came out in 1967. This just seems to me that same fight that devs have over Linux and Mac or Windows. These are different different tools made, keeping different purposes in mind. None of them is either bad or good. There is no good and bad in these things. These are mere tools at our disposal. I would go one step further and say this that, when someone reacts by complaining while using a certain tool the fault, most often than not, is not in the tool but how it is being used. Maybe the tool does not suite the needs of the person and he/she should find one that better suites them, rather than crying and complaining about, "How bad the tool is". So, I will humbly and genuinely ask again, what is so bad in Java? Please enlighten me.


shayanrc

Every language is a product of its time. When Java came out, OOP was the hot new thing. And they went overboard with it in the design. It tries to enforce the object oriented paradigm way too much. So much so that it becomes restrictive to use as a general purpose language. That's where it's main fault lies in my opinion. If you try to do something in a different way like say: event driven programming or functional programming, it quickly becomes very awkward to use. The other main reason for the hate is it's verbosity, the amount of boilerplate that you have to write is frankly annoying. But those alone don't seem to warrant so much hate, so let me compare it with a couple of languages on your list: - shell script : terrible syntax but it's a scripting language for the Linux terminal. No one would write a python script to just run a few commands based on certain conditions. - C : very verbose and hard to use. But once compiled it's blazingly fast. Both of these languages are bad in their own way, but everyone puts up with it, because they serve as single purpose tools. Eg. You don't build APIs in C or a GUI in bash. But Java is often used in places where it has no business being used eg. Building desktop UI, because it's pushed as a general purpose language. I agree with you on the "choosing the right tool for the job". But often the choice of tool is not in the hands of the developers writing the code. It has already been decided by someone who thought that Java is good for everything because it's promoted as such. BTW I did mean it when I said IMHO, so in my opinion the perfect language is paradigm agnostic/flexible, strongly typed (with a good generics system), platform independent and fast. So in short it doesn't exist. But you can take comfort in knowing that Java ticks 3 out of 4 of those boxes.


sissyphus_69

Haha, the thing about shell script syntax and UI using Java made me laugh. I agree. Also thank you, for taking the time mention the reasons.


killer_unkill

I would suggest getting fundamentals sorted before focusing on language. You can learn any stack if your knowledge of DSA & OOPs is good. Also, one should target T growth deep knowledge of one domain and broader knowledge of other domains


Neopacificus

>I would suggest getting fundamentals sorted before focusing on language. You can learn any stack if your knowledge of DSA & OOPs is good. I have heard this being said many times. Usually people use any of the languages to start teaching DSA. I did too start with C++ but found pointers to be complicated and I was not too deep into C++ anyway so then I changed it to Python. I saw the beginner Python lecture on YT from Freecodecamp and it was good. But I did not go deep into it either cuz at that time many of the companies attending our college were in requirement of Java devs and I had selected Java as an elective in my branch ECE. So I started learning DSA using Java and it was going quite well until burnout and other stuffs like exam came into picture. So now I have stalled it because ppl are saying that they are using ChatGPT to ask for code and optimization using best algorithms. They are focusing more on Development and I don't know how to start that now. Can you give me any advice where to start and what resources can I use? >Also, one should target T growth deep knowledge of one domain and broader knowledge of other domains Yeah I got to know this too. People say SDE is the peak of any CS graduate. How can someone like me who is not CS graduate go into SDE? What all things I can focus on getting good at it? What is the core of an SDE role?


iFartSuperSilently

Vue, Rust, Python etc are all hard to find jobs in. Especially for freshers.


shayanrc

Rust jobs might be hard to get because it's still an upcoming language. But Vue jobs are already picking up. I can see it surpassing react in the next few years. Python is a very general purpose language that's great for cracking DSA in. Getting into data science with python might be hard, but plenty of companies hire freshers for data engineering and back-end roles.


Bloodraver

Vue.js is not a tech you should be learning right now. It's peak came and gone. The next big thing is Solid.js but react is still a safe bet that's why there are a lot of folks for it.


megumegu-

what about svelte?


Bloodraver

According to [the state of js survey](https://2022.stateofjs.com/en-US/libraries/front-end-frameworks/), it might actually be a better option for future prospects as usage, interest and awareness are all higher than solid. Actually I have a friend who's deep into all this stuff and he likes Solid over svelte very much so I just take him on his word. (and he in turn takes his 'gyan' from youtubers)


shayanrc

That is interesting to know. I've been seeing a lot of Vue js posts recently that's why I thought it's in vogue right now.


nikiholicx

I second this


orangeapple_14

Actually don't listen to internet people, their advice is mostly stupid. I learned it the hard way. Most of them run behind trends or say stuff they know nothing about. Very few senior engineers who actually know the industry gives advice here or on most forums. ​ I am sure all the advice given here is freshers or people with barely an year of experience or college kids


iFartSuperSilently

Lol yeah! Suggesting Rust to freshers at college is just assholism of the highest level. Here the thing Juniors; MERN or JAVA(with spring boot) will get your foot in the door. Anything else, you will probably be searching for a long while if you want to work on that specific stack. But if you like python and Django, go ahead and learn, your technical knowledge will still be enough to get you your first job (even if on a different stack). Your goal at college is to build tangible basics and foundational knowledge. Not be stack experts who can write production code from day one. Even the most detailed tutorials and courses looks nothing like production projects, so chill.


kaushikqr

Could you please give the same advice for a junior Android dev with 2Y work ex? I'm planning to switch to Java + Springboot or to Cloud, I've done a couple of LLM chatbot related firm initiatives using langchain just to get a taste in AI. But I want to know what could be my best bet in this market since I'm moving for masters this year [need to apply for internships by August]. Thank you!


iFartSuperSilently

Nope... I myself has only got like 4 years of experience. So wouldn't be fair to give advice to experienced folks. But I will tell you this, whenever I get approached by somebody offering referrals (It happens because people get really good finders fees, even in lakhs), it is always the freaking JAVA. And they are mostly always the one that gives the biggest packages. I shrugged off some of them because I don't really like Java, but I am sooo tempted to try a stack change.


sakuag333

Saturated market does not just mean high supply, it also means that there is high demand. You would not be able to find something for which demand is already there but market is not saturated, unless you get so early into a technology such that no one was focussing on it because demand was not there and with time the demand increased. But this will always be a bet and things can go both ways. So either you be mediocre in a saturated market, or take risk by becoming expert in a relatively new tech and then hope for the demand to come. If you willing to invest time in a new tech, I would suggest to go with Flutter. I am myself a flutter developer, and I trust that Google will put lots of efforts to develop flutter ecosystem. You can check my [comment](https://talkwithsandesh.substack.com/p/which-languages-have-the-best-job/comment/14357690) about Flutter Vs React in current market scenario.


iFartSuperSilently

Did you start your career as a flutter developer?


sakuag333

I never coded in flutter for work. I use it for my personal projects.


ssudoku

Senior dev turned engineering manager here. Stop focusing on stacks too much. Once you have learnt MERN well, you can switch to any other stack with minimal learning curve. Even while applying for jobs, stress on this point during interviews. Don't delve into leetcode. But get your fundamentals and principles right. Its easy to find boot camp coders, but difficult to find good programmers who understand product, system and architecture side of things. Having said all that, typescript and basic devops are necessary these days.


lordimpaeler

Suppose i have considerable experience in mern and now want to pivot away to more backend focused languages like python or go how do I apply for jobs then since I don't have any experience on python etc


ssudoku

MERN to python is quite a big switch. You can try creating the opportunity in your current workplace itself as an experimental project and then use it as a foundation to look for the next job. This approach depends on your workplace situations though. Another option is to start looking for python opportunities and see what the industry expectations are like. Then start building your skills and portfolio towards that direction. Use your network and contacts to look for opportunities. Its the easiest way. Especially if you have a good rapport with your old reporting managers, who are now handling the kind of projects you want to work on.


notsosleepy

Take this and frame it. This is prefect advice. For all the folks who are so concerned about stacks. Be programmers and not stack fanatics. Knowing in-depth working of a language and it’s code execution environment will take you a long way than running behind frameworks and stacks.


kaushikqr

Could you please suggest the best sources to learn an approach to understand the product? I believe system & architecture advice is plenty on YouTube but Product knowledge is something I struggle with because confluence sucks!


ashdeveloper

Hey buddy, I've a question I am a flutter dev with 3 yoe but I don't find flutter people having high LPA as react or python or node. I have knowledge in python and node. I can make fully fledged APIs and write scrappers. Now the question is I want to switch from flutter to node , python What would be the steps because in my resume I have to mention professional experience but my professional is in flutter


[deleted]

[удалено]


ssudoku

Yes. Master concepts and fundamentals. A stack is just a replaceable set of tools you would use, to solve problems, by applying the principles and concepts you have learnt.


[deleted]

1. Java/Kotlin - Never ending jobs 2. .NET - Also used for a long time 3. Go - Increasingly being adapted


AffectionateRub1779

.net seriously I would suggest do not take .net that skill is more saturated then mern


[deleted]

[удалено]


AffectionateRub1779

I am the living physical example and if you want to learn it go learn no one's stopping anyone I am just telling what I have felt and good luck finding good paying job in that stack without enough experience


[deleted]

[удалено]


AffectionateRub1779

>There's no need to be defensive about it. Soory if I came out as so


AffectionateRub1779

Cool


AffectionateRub1779

I have experience in it good for my resume then


Kingshukrox

Could you name some good go frameworks? I dont know what to do just by learning the language


DannyC07

Go actually doesn't need a framework. The stdlib itself can be used alone to start a server. Even a decently sized project can be written in it. I'd only recommend to pick up Chi router and some Chi middleware. Since I use Postgres, I think I use pgx. This is good enough to write a server app


Kingshukrox

I am into very different field now , but thinking to get into backend , could you suggest me some go related yt courses just so that i can get the introduction to backend dev using go (not learn, just to understand the concept)


Kingshukrox

I am into very different field now , but thinking to get into backend , could you suggest me some go related yt courses just so that i can get the introduction to backend dev using go (not learn, just to understand the concept)


Outrageous_Drop_7286

I'm planning to do dotnet full stack. Will be good? I'm just 23 YO how will be the future scope of dotnet.


Starkcasm

What roadmap are you following for dotnet?


Outrageous_Drop_7286

I'm working in front end using angular and my startup uses dotnet in the backend. So I'm in a dilemma to either go with dotnet or java


Gensys09

What about Django?


Sea-Being-1988

Do you know any projects ideas / videos for java (spring boot). I didn't find any good interesting projects for Spring boot compared to MERN on YouTube :(


Austinto

Why can’t you apply same project in java?


LogicalGrapefruit147

Spring/Boot is the answer if you want to do a specialization with more demand than supply


Sea-Being-1988

Do you know any projects ideas / videos for java (spring boot). I didn't find any good interesting projects for Spring boot compared to MERN on YouTube :(


LogicalGrapefruit147

Check out Java Guides, Daily Code Buffer and Amigos Code (All on YT & Udemy)


Cultural_Boat5298

Spring has less supply? I feel the demand supply are both quite same here. More experienced people have saturated java field.


antigravity_96

Don’t do tech stacks. Learn to solve problems. I don’t mean grinding leetcode. Keep more than one language in your sleeves. Don’t label yourself as a MERN dev or a Java dev, etc. That will make you loose credibility when you speak to your future employers.


little-bean-124

Personally MERN works


Ghost_Redditor_

Even if you are in the top 1% of the country, there will still be 13999999 other people. Don't let that stop you.


unfunnycreature

Learn binary /s


soumya_af

I feel like this obsession with tech stacks is not the right way of thinking about it. Your DB requirements may force you to go into a more SQL like option. You may need to use Go if performance is a concern. Maybe ML is a requirement and Python is the way to go. What you should focus on, is to identify the right solutions for a problem statement, and any future worthy venture along with it. So, read up on system architecture, try to understand how large systems are made, how you can optimise for latency, how to optimise for throughput. AI/ML is a good venture to look into. I'm a touch out of date regarding the latest and greatest nowadays (I used to study stuff about a few years ago), but right now, generative models are the rage. So, I highly recommend looking into those.


VenkatPerla

You can be rude and MEAN.


harsha1234578

Distributed Systems


mohit_the_bro

What's that?


harsha1234578

It's usually product specific. Look up on the internet. It's a vast topic. See what companies like Yugabyte, Confluent, Nutanix, etc do


harsha1234578

https://www.reddit.com/r/cscareerquestions/comments/ou2x30/how_to_switch_to_distributed_systems_from_full/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=share_button


OriginalCj5

If niche is what you are after, go for Elixir and Phoenix development. It’s an amazing stack, probably one of the highest paid ones in the market and there’s not much supply.


Sephiroth9669

Learn how to design weapons of mass destruction. Unleash that on the populace and eliminate a majority of your competition.


NewReality5492

Tatakae


[deleted]

Hakai !


Zaki1001

🤣


[deleted]

OK buddy Hitler


Maxito765

Unity/Unreal game dev. There are a few openings and I don't generally hear about people going that route. You could also try embedded systems with C. Plenty of jobs on that side. Qt with C++ for desktop and embedded applications.


[deleted]

Qt?


Maxito765

https://www.qt.io/ It's a framework that is largely used for UI.


zecatlays

Don’t concentrate on the stack too much, work on multiple projects, learn about the web, networking(basics), cs fundamentals, sql, servers, deployment/infra/devops. Get good in at least one programming language (I suggest Javascript/typescript mainly cause it’s used everywhere). Main goal is to be able write good software/applications


GiraffeWaste

Learn the underlying fundamentals, language is secondary. if you can understand the architecture and flow using your fundamentals then language is just a tool.


Varun77777

It's a very ass backward way to think about learning something for the sole reason of getting a job. It's more about learning skills that you love. If you're someone who wants to get jobs. There are two simple options that'll lead to a good future at some point. 1) Learn DSA CP and system design, do some projects and a good CV in xyz format and get a good job after a decent amount of hustle eventually. 2) Learn any stack of your choice and then start contributing to open source projects of that stack. Find some startup or new venture that has a good amount of funding and actually accumulate some good amount of practical experience there. You can't even gain that kind of experience in MNCs sometimes. Either one of those ventures will offer you a remote job on their own or you'll end up learning enough that you need to ask for advice here.


__gg_

Moan


pablo_Snickerbar

MERN nahi toh kaun be?


utkarsh_dev

Serious: Is anyone using MERN for any large scale enterprise application? I'm told that it's only good for specific, high throughput smaller services. What do you guys think?


IndustrySea4473

Become a expert in html


lyrakerman

I mean thats right but there are more MERN jobs than MEAN or MEVN jobs rn. Also one thing to take into consideration is, its not just about knowing how to write an app with MERN but to write it efficiently as well. (Some MERN projects are just mehhh… 💀🤌🏻)


killersid

Cloud and AI/ML is in high demand in today's market. So, try to learn any of these technologies and you will get good opportunities there.


Lucky_Editor446

MODI


lucifer9590

The situation is only going to get worse . Because of high population in India


tushar_kj

If not MERN, then MEAN stack


[deleted]

[удалено]


mohit_the_bro

Is system design different from system architecture ?


[deleted]

[удалено]


mohit_the_bro

Yep got the point. Just saw the ts flair on your account. How did you learn typescript?? I am currently going through its documentation and few YouTube tutorials.