Tech Stack I use at Google as a Software Engineer

  Рет қаралды 414,117

NeetCode

NeetCode

Күн бұрын

Пікірлер: 536
@NeetCode
@NeetCode 2 жыл бұрын
What tech stack do you guys use? 🚀 neetcode.io/ - Get access to every course I will ever create!
@wongwong7479
@wongwong7479 2 жыл бұрын
Guice vs spring', which one do u think is better for microservice @Neetcode
@anicolaspp
@anicolaspp 2 жыл бұрын
@@obiwankenobi07 There are public talks about all this. Here it is about piper for instance kzbin.info/www/bejne/jWiUc4ehiseXp6c
@2RosarioVampire
@2RosarioVampire 2 жыл бұрын
Looks like my comments get deleted. Tech stack at my firm is similar too but non-internal tool version of such. No C++ though and Kotlin instead of Java.
@masternobody1896
@masternobody1896 2 жыл бұрын
you are epic
@ramses8847
@ramses8847 2 жыл бұрын
At Amazon we have a ton of internal tools as well, but they kinda suck, especially when it comes to testing. I'm on a team that owns backend services (Java) and some front end components (React, TypeScript, GraphQL).
@beyondlimits8159
@beyondlimits8159 2 жыл бұрын
Surprised you guys dont use google docs as an IDE
@OGPea
@OGPea 2 жыл бұрын
hahahaha
@shubhamseth9560
@shubhamseth9560 2 жыл бұрын
😂☠️
@GvSharmaBKP
@GvSharmaBKP 2 жыл бұрын
Lol
@buka.a
@buka.a 2 жыл бұрын
💀
@cloud15487
@cloud15487 2 жыл бұрын
wait until you find out that no one actually inverts binary trees or merges linked lists at work! 😂
@tedtran7855
@tedtran7855 2 жыл бұрын
1. Angular 2. GraphQL 3. Java 4. Guice 5. gRPC 6. C++ 7. An absurd amount of internal tools
@neilranada
@neilranada 2 жыл бұрын
Thanks Ted!
@michaelasin6050
@michaelasin6050 2 жыл бұрын
No K8s though?
@cimbot
@cimbot 2 жыл бұрын
@@michaelasin6050 There should be I think, neetcode just didn't get to explain it, maybe because it's more like infra tools
@rachitdang7453
@rachitdang7453 2 жыл бұрын
First one was React.
@NeetCode
@NeetCode 2 жыл бұрын
@@michaelasin6050 We have an internal version called Borg which I guess is public info. Here's the paper on it: static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf
@yichizhang1
@yichizhang1 2 жыл бұрын
Working at Google right now (got a job thanks to you :D). It's definitively a tech island. Feels like I have to learn everything from scratch.
@hartmannr76
@hartmannr76 2 жыл бұрын
Have you checked out the internal tech island doc that Urs wrote?
@sharathkumar8338
@sharathkumar8338 2 жыл бұрын
I don't know anything other than DSA and system design. just core java. Do I need to know anything else?? before entering google?? I have interview scheduled. Currently i'm working in networking domain and work is mainly based on C.
@x12624
@x12624 2 жыл бұрын
@@sharathkumar8338 System Design dude. Make sure you know the in and out of system design
@sharathkumar8338
@sharathkumar8338 2 жыл бұрын
​@@x12624 thank you. i'll make sure i know those things. anything else you would like to suggest? please let me know. I want to make it to FAANG and survive there. My dream.
@adekolavictor9155
@adekolavictor9155 2 жыл бұрын
congrats man
@ambreenirshad7950
@ambreenirshad7950 2 жыл бұрын
I am eternally grateful to you ! I got my job offer a few days ago and will be starting early August ! Your videos really helped me get the job. I hope I can see you around at Google :)
@jv1192
@jv1192 2 жыл бұрын
Do you really have to learn all thes languages ? Can I get a decent paying job that only requires you to know one or two languages at the most?
@sarthakmittal1668
@sarthakmittal1668 2 жыл бұрын
@@jv1192 yes you can and you should stick to 1 language as a beginner, and focus on the Software Development concepts rather than the language itself, once you get enough experience, you will realize that language is just a medium to express your thoughts! I am an Android developer for example and only know JVM based languages (Java/Kotlin)
@adekolavictor9155
@adekolavictor9155 2 жыл бұрын
congrats man
@LouisChiaki
@LouisChiaki 2 жыл бұрын
The new IDE is just an internal version of VSCode. The build tool is just Bazel. The version control system is an internal version of Mercurial.
@RealDyllon
@RealDyllon 2 жыл бұрын
Bazel is Google's Open Source fork of their private tool, Blaze.
@TechSY730
@TechSY730 2 жыл бұрын
The version control is actually a homebrew thing with origins based on Perforce's model. Though there is a Mercurial based compatibility "thing" (more than a shim, but less than a legit full mirrored central hg repo) available, which is probably what you were referencing.
@tianhaozhao6774
@tianhaozhao6774 2 жыл бұрын
90% of tech companies in China use Java based tech stack. The interviews contain very in-depth Java knowledge which requires you to read the source code of some Java basic package.
@abhinavpy2748
@abhinavpy2748 2 жыл бұрын
Same in India. Most tech stacks are on Spring MVC/Spring Boot and frontend is on Angular/React. MySQL database with Redshift (AWS), or Snowflake. Apache Spark, Kafka etc.
@skyhappy
@skyhappy 2 жыл бұрын
That's hilarious. C# is the better language though with default arguments, LINQ, and object initializers.
@BhargavSushant
@BhargavSushant 2 жыл бұрын
Hi Zhao, I am starting out with java again after 5 years of last using java ever, Any suggestion how should I start, basically I want to reach to expert level but there are too much clutter on web but most resources only teach introductory academic level Java, I dont want to get stuck in Tutorial hell and looking for direction that can help me prepare an Industrial experience on my own. Thanks.
@skyhappy
@skyhappy 2 жыл бұрын
@@BhargavSushant baeldung and jenkov tutorials were clear
@Mzulfreaky
@Mzulfreaky 2 жыл бұрын
Ooof that seems pretty hellish to me. I hate java and OOP in general but still use it
@osxs333__7
@osxs333__7 2 жыл бұрын
I work at AWS on Account Administration, we run with Java and most of our micro-services with Native AWS server less products (Lambda, DynamoDB, SNS, SQS, Step Functions, CDK). We also use a lot of internal tools for ticketing, code review, CI/CD etc.
@PlasmaSnake369
@PlasmaSnake369 2 жыл бұрын
Java doesn't seem like a good thing to use with lambda because don't you have to like start up the jvm every time the function is called?
@cloud15487
@cloud15487 2 жыл бұрын
Is that what causes the cold start issues? Python/JavaScript would be faster?
@ers-br
@ers-br 2 жыл бұрын
@@PlasmaSnake369 For rarely used APIs, Java may not be a good choice because of cold start. But after the instance is 'HOT'... then it is faster than most of other languages. After the first call, the instance stays online for some time, hoping to answer other requests.
@50sKid
@50sKid 2 жыл бұрын
The problem with all that internal tooling is you become completely used to it and dependent on it. If you ever leave it’ll be like you cut your hands off and you’re using prosthetics now. Same goes for all layers of abstraction. Make sure you don’t lose the underlying skills you have.
@ValentinoHarpa
@ValentinoHarpa 2 жыл бұрын
Underrated comment right here
@ericepperson8409
@ericepperson8409 2 жыл бұрын
As someone who works in software support, a lot of people would be surprised about the amount of Java that is used at Enterprise scale. Python, Rust, Go, C++ get a lot of attention from the programming adjacent communities, but there are few languages as prevalent as Java in the server space that can handle Networking at scale.
@oakvillian5
@oakvillian5 2 жыл бұрын
Hearing that the tools make things simple is so so huge. Most companies could never.
@perezident14
@perezident14 2 жыл бұрын
This is a lot 😵‍💫 At work, I use Express, Inverisfy, MongoDB, React, and TypeScript across everything.
@BeastinlosersHD
@BeastinlosersHD 2 жыл бұрын
They use typescript a ton
@igh9410
@igh9410 2 жыл бұрын
I'm surprised to hear that Google doesn't use Spring framework for Java projects. I'm korean and like more than half of the back-end software engineer job postings in South Korea requires Java and Spring framework experience for entry level positions.
@PlasmaSnake369
@PlasmaSnake369 2 жыл бұрын
They just have their own version that probably does basically the same thing
@genjioto
@genjioto 2 жыл бұрын
Pretty cool, I am about to be promoted at my small company to a SWE and our tech stack includes Angular and .Net. Haven't graduated college yet but most of my software classes are in Java, great to know that I am using tech relevant to google.
@stumblinzz
@stumblinzz 2 жыл бұрын
"angular has a certain way of doing things thats consistent across projects". I wish more tech would be and stay consistent with practices throughout their lifecycle.
@KieranCrown
@KieranCrown 2 жыл бұрын
I use React Native, Typescript, Terraform, Git, GraphQL, Swift, and Kotlin at my job ❤
@mike200017
@mike200017 Жыл бұрын
The comment on submitting code changes being so easy is so very true. Assuming it's a very simple fix (e.g., typo, comment, trivial bug, etc.), I've had cases where going from noticing the issue, to creating the change, to pushing it for review, to getting it approved, and submitting it, was all done within a few minutes, within one chrome tab (plus the code-reviewer's chrome tab). On the other hand, I've also had cases where relatively simple changes, say about 50 lines of code, could take weeks to forever (aka never) to get submitted, but that's not about tooling, but about scale (when the total power consumption, at data centers, of the function you are changing is measured in how many major american cities it's equivalent to, expect that it will take a while to get that change checked in).
@yang5843
@yang5843 2 жыл бұрын
Every time Neetcode has a complaint about Java, he has to work with another Java project.
@anicolaspp
@anicolaspp 2 жыл бұрын
I think there is no problem is you talk about piper or blaze, there are a bunch of talks about them from back 2017 or so. I also believe the same about Boq and Pod, bunch of talks from ServerConf. It would also be nice to explain the languages we use at Google and when. Java and C++ for backend Servers to receive external traffic, JS for frontend, Go for internal services and managed infrastructure(this is mostly my space in GCP), etc…
@NeetCode
@NeetCode 2 жыл бұрын
Ah, thanks I didn't know that
@anicolaspp
@anicolaspp 2 жыл бұрын
@@NeetCode Piper talk here kzbin.info/www/bejne/jWiUc4ehiseXp6c
@BeastinlosersHD
@BeastinlosersHD 2 жыл бұрын
I mean if you're still using piper at google...
@mangalegends
@mangalegends 2 жыл бұрын
Man your work sounds really interesting. My current dev role is so boring and is built on such ancient tech that Microsoft doesn't even support it anymore and they don't want to even let us upgrade the version of the program language platform that was used to write the software
@viktodorov
@viktodorov 2 жыл бұрын
It's time to switch jobs I guess unless you get paid a ton and you intend to retire at that place. I used to do Sharepoint 2010/2013 development prior to going to blockchain development.
@jmon24ify
@jmon24ify 2 жыл бұрын
I was not surprised by GraphQL. It is an excellent open sourced tool. I am somewhat surprised by the lack of Kotlin and Rust usage. I was aware of Java and C++ being used and I understand that large scale apps are near impossible to swap out a language. I just figured there would be a more inclination to use something like Kotlin or Rust for microservices especially considering Oracle's and Google's history. There was also no mention of GCP or even using Apigee with GraphQL so it makes me wonder if they use their own internal tooling for APIs. Other than that, very informative. thanks for the share.
@BeastinlosersHD
@BeastinlosersHD 2 жыл бұрын
There is a bunch of languages you can use, but it comes down to technical factors a lot. Newer stuff can use rust or (especially) kotlin. Internal tooling or (especially) internal versions of open source stuff with better google integration is SUPER common. I be using go a lot at work, but coworkers even on the same team will have not touched go in a bit
@adarshkumar3518
@adarshkumar3518 2 жыл бұрын
Angular is not surprising. GCP and Firebase are prime examples, but GraphQL? That hit like a truck
@aakashPotter
@aakashPotter 2 жыл бұрын
This motivates me even more to apply for Google. Working for Google is an engineers dream
@friction5001
@friction5001 2 жыл бұрын
Don’t solely rely on google but the opportunity to work in the industry should be the dream; google is just an additional bonus
@ravitejaknts
@ravitejaknts 2 жыл бұрын
@@friction5001 Some people have preferences in companies as they love the stack those companies use or they love their products, so they want to work on them.
@2RosarioVampire
@2RosarioVampire 2 жыл бұрын
Don't put any company in some pedestal. I say this as someone who is also a software engineer in a tech firm. It's all the same job everywhere. Work for a company that pays you well and has a great team. Google has been known in recent years to pay less than the rest of the market and isn't as preferred among many veteran engineers. Sometimes paying less by over 6 figures just for the name. Same happened to Blizzard in past. Put a company in some pedestal and companies take advantage of its workers. But give a try for sure. Great company to relax at.
@reviews9216
@reviews9216 2 жыл бұрын
@@2RosarioVampire So what are the companies that you suggest?
@2RosarioVampire
@2RosarioVampire 2 жыл бұрын
@@reviews9216 In this economy? Any company that accepts you. Most of tech firms are laying off/freezing overall.
@alittlecoding
@alittlecoding 2 жыл бұрын
internal git tool and IDE are surprising to me. thanks for sharing.
@minzi5408
@minzi5408 2 жыл бұрын
Why use Java when you work at the company that made Go?
@plankton383
@plankton383 2 жыл бұрын
Java was released in 1995. Golang was released in 2009. It's like saying why use TCP/IP when there is a better internet stack. They use Go, but they have a lot of products that were existent before the release of Go, and would be hard or waste of time to change them.
@_hollister9515
@_hollister9515 2 жыл бұрын
Actually they coexists in heterogeneous microservice. Java is pretty well in setting-up the framework to manage all the services. And inside each service, the stack can be Java, Go or C++, as long as they follow the same protocol to communicate.
@plankton383
@plankton383 2 жыл бұрын
I personally think that backend is better than frontend. Most business logic (i.e. the interesting stuff) happens in the backend, and playing with microservices is fun.
@Aripoma
@Aripoma 2 жыл бұрын
As a front end developer I don’t necessarily disagree but I would never choose backend over front end. To each their own 👩🏽‍💻
@CODFactory
@CODFactory 2 жыл бұрын
you haven't worked on frontend before in that case. Maintaining the state of the UI, how to achieve routing, how to make the rendering fast by pre-fetching the pages etc are all complicated challenges. Both backend and front-end have their own challenges, so saying business logic happens in backend has no weight since business logic is just one piece. Infra people can argue that infra is better than even business logic portion
@plankton383
@plankton383 2 жыл бұрын
@@CODFactory why you’re pressed? 😂 I didn’t argue, I intentionally started my comment with “I personally think…” to chase people like you away. And why would you assume I didn’t work on frontend?! I’ve equally worked on frontend, backend and devops.
@rachitdang7453
@rachitdang7453 2 жыл бұрын
@@Aripoma Even I like frontend. Observables and RxJS are too fun to use. Microservices are good as well especially with cloud.
@gouf_respecter
@gouf_respecter 2 жыл бұрын
Having internal tooling for everything seems so fun, probably makes collaboration easy. I interned at THE open source company and they used everything under the sun, devs could even install whatever OS they wanted. The latter was great, but the former was mildly annoying sometimes
@alexandrep4913
@alexandrep4913 2 жыл бұрын
Also a great way to make sure the employees have a harder time leaving too.
@optimisticradish9121
@optimisticradish9121 2 жыл бұрын
@@alexandrep4913 I agree. Specifics of internal tools are mostly useless once you’ve left the company
@MIDNightPT4
@MIDNightPT4 2 жыл бұрын
Love you Neetcode, you helped me get an offer ❤️
@NeetCode
@NeetCode 2 жыл бұрын
Congratulations 😃
@AndrewErwin73
@AndrewErwin73 2 жыл бұрын
Software engineering is about solving problems. The language is secondary! I am glad you mentioned that.
@trant4
@trant4 2 жыл бұрын
I’m not surprised google does not use react. GraphQL is definitely a surprise
@archmad
@archmad 2 жыл бұрын
yeah why use graphql when you have grpc
@RyanKOnk
@RyanKOnk 2 жыл бұрын
@@archmad grpc is an overkill
@cimbot
@cimbot 2 жыл бұрын
@@archmad Maybe for BE-FE communication they use GraphQL, but for BE-BE they use gRPC Cmiiw
@arjundureja
@arjundureja 2 жыл бұрын
I bet they're currently working on their own replacement for GraphQL
@arjundureja
@arjundureja 2 жыл бұрын
@@archmad Web browsers don't support gRPC since it operates over HTTP/2. You need to use a HTTP/1 protocol like REST or GraphQL
@trant4
@trant4 2 жыл бұрын
I use meteorjs at work - it’s a framework for building web app, desktop app and stuff. It’s alright because I work on the frontend and can integrate react and blaze. But good luck when you run into a bug, there is little to no community on the language
@invictuz4803
@invictuz4803 2 жыл бұрын
Good to know, thanks for sharing!
@hankim1083
@hankim1083 2 жыл бұрын
Also it requires months to upgrade
@sangeethkumar_drone
@sangeethkumar_drone 2 жыл бұрын
Good to know , I used meteor js 2018-2020 . Now it seems mostly dead
@akshayas349
@akshayas349 Жыл бұрын
Man your voice is so soothing and calming ,. One day even I made your video on autoplay in playlist and on hearing your voice i slept.
@michaelwinters327
@michaelwinters327 2 жыл бұрын
Hey Neetcode I’d find it really helpful if you could post a video solely on analyzing Time and Space complexities!
@NeetCode
@NeetCode 2 жыл бұрын
I've been thinking about that, will try to make one this month!
@JoseHenrique-xg1lp
@JoseHenrique-xg1lp 2 жыл бұрын
Graphql is something I was not expecting but makes sense when you think about it. Java was the big one to me
@riscnx
@riscnx 2 жыл бұрын
Java is mostly likely used, because majority of senior staff in Google come from Java background. And their existing CI, code quality checks, ... Buch of standardisation tools are well tuned for Java.
@whong09
@whong09 2 жыл бұрын
Using an in-house IDE is really weird when the publicly available options are so good. At Amazon we have our own internal build tools but use in-house plug-ins to extend publicly available IDEs for customization, like working with those build tools.
@BeastinlosersHD
@BeastinlosersHD 2 жыл бұрын
Google uses a version of vscode thats on steroids. Probably similar setup as amazon.
@archit_kr
@archit_kr 2 жыл бұрын
Which publicly available IDEs do you use at Amazon?
@voidvector
@voidvector 2 жыл бұрын
The IDE is cloud-based, new version is a fork of VS Code, replacing old version that existed for 15+ years. It encourages Chromebook usage and reduces data exfiltration risk.
@whong09
@whong09 2 жыл бұрын
Amazon's a big place so things will differ a lot between teams. But I use vanilla PyCharm using the company's license, I know some other engineers in the same org I'm in use VSCode. Setting up an IDE was not part of new hire onboarding.
@mike200017
@mike200017 Жыл бұрын
About 5 years ago, it was pretty much the same at Google, lots of internal build tools and custom extensions for various IDEs (emacs, sublime, vi, etc.) that were popular. There was an internal in-browser IDE that could be used, but it wasn't very good, but good enough for light work (quick-fix) or while using a laptop. But with the pandemic, they had to fix that really quick, and get a proper in-browser IDE, which is now a fork of VSCode. Most people I know, including myself, just never switched back after they got used to this new tool, which was pretty much the only thing you could use while working from home (for security reasons, laptops are just portals to cloud tools, so, an IDE has to be either cloud-based and in-browser, or in a terminal on the other end of an SSH connection to a desktop computer physically plugged into the corp network, like emacs / vi / less). I would add that there was a significant amount of friction between the external IDEs or text editors, even with really good custom plug-ins, and the cloud infrastructure behind the version control and distributed build systems at Google, coupled with the famously huge mono-repo. It was often too easy to click the wrong button or hit the wrong shortcut key combo and send your IDE into a tail-spin, trying to chug through the entire mono-repo or the entire distributed build artifacts.
@Liloulalalala
@Liloulalalala Жыл бұрын
I'm currently using Java Spring and Angular two in a really big project (several hundreds of ppl) and it works beautifuly
@jh1618
@jh1618 2 жыл бұрын
Would be cool to get a walkthrough of how the internal tooling (IDEs, repository, pull requests etc) works together. Even if it's just schematic. In that area, a lot of commonly available tooling really feels like some stitched up frankenstein of various barely compatible projects.
@DemGains
@DemGains 2 жыл бұрын
My favorite internal tool without a doubt will be Memegen 🤪
@javisartdesign
@javisartdesign 2 жыл бұрын
Really interesting to watch. Want to see how it works the continuis integration, control version, pull request, code review process. Thanks!
@joeekadi
@joeekadi 2 жыл бұрын
Would love a video showing the process of opening a PR and getting reviews. A real pain point in my current contract
@omartahboub2900
@omartahboub2900 2 жыл бұрын
In addition, one complaint I heard that Google Tech Stack and Ecosystem are very propriety making it difficult to transition outside Google.
@thelonercoder5816
@thelonercoder5816 2 жыл бұрын
thats actually a good point lol
@basma-ba
@basma-ba 2 жыл бұрын
a very surprising video. thank you for sharing this tools with us. I am usually using python and django framework
@yuanliu5945
@yuanliu5945 2 жыл бұрын
Will you consider teaching GraphQL or Angular? I think you're the best tutor on the YT!!
@farnazzinnah1256
@farnazzinnah1256 2 жыл бұрын
funny how I was researching GraphQL last night for my upcoming project and 3 hours before Neetcode posted a video discussing GraphQL lol!! Neetcode is stalking me now lmaaaoooo :p :p
@Caexur
@Caexur 2 жыл бұрын
Have a google interview in about a month, using your vids to prepare! Wish me luck man! Edit: literally a day after I posted this theres a hiring freeze LOL
@shubhamsharma8736
@shubhamsharma8736 2 жыл бұрын
Wish you best of luck🔥🔥
@NeetCode
@NeetCode 2 жыл бұрын
Good luck, you'll do great 👍😃
@Caexur
@Caexur 2 жыл бұрын
@@NeetCode Thanks!
@JohnSnow-gi7iv
@JohnSnow-gi7iv 2 жыл бұрын
I also work on Angular, it's great
@ulissesrosa1812
@ulissesrosa1812 2 жыл бұрын
Can u make a video talking about how data structures and algorithms helped you to solve your day a day tasks in Google ?
@andylim6643
@andylim6643 2 жыл бұрын
It doesn’t 🤪 Leetcode stuff is only used for interviews and that’s it
@Red487239
@Red487239 2 жыл бұрын
The fact that you don’t use GIT is what surprised me the most. Surely Google knows what they are doing and there must be a good reason for that but really surprising nonetheless
@Nicoya
@Nicoya 2 жыл бұрын
Git is used, quite a lot, just not for the core stuff. Like, all of Android, Chrome, ChromeOS, etc is on git.
@riscnx
@riscnx 2 жыл бұрын
"Google knows what they are doing", Really? "Google+", "Sites", "Hangout"... Maybe google know, but users don't!
@haxney
@haxney 2 жыл бұрын
Google uses a monorepo, where (almost) all code across the company is stored in one repository. Branching isn't used, so everyone is developing against HEAD. It sounds crazy (it did to me when I first joined), but it works incredibly well. It means that if I write a library which other teams use, there is only ever one version of it. I don't have to worry about them using an old version of my library. I can make breaking changes to my library by updating all of the existing uses of it, since I can easily find all references to my code. I don't have to leave around deprecated functions in case someone somewhere *might* use it.
@riscnx
@riscnx 2 жыл бұрын
@@haxney So how to do actions like revert, decide when everyone is done and changes are ready for review or ready for release etc?
@yaswanthkosuru
@yaswanthkosuru 2 жыл бұрын
you are great you was known to so many countries
@Chemnitz11
@Chemnitz11 2 жыл бұрын
My tech stack at work is COBOL, z/OS, DB2, MVS...
@antoniocs8873
@antoniocs8873 2 жыл бұрын
I'm a bit confused how you're hired as a frontend dev but then you're working with Java and then C++. Nothing against it obviously but C++ is quite a complex language. Google has even developed their own standard library (kinda) called Abseil. Seems like a cool place to work, hoping from project to project and language, really fun.
@daxeckenberg
@daxeckenberg Жыл бұрын
at the end of the day it's more important that you have the ability to learn quickly as well as think before doing.
@NotNotNithin
@NotNotNithin 2 жыл бұрын
Polymer's new improved version LitHTML is easy, lightweight framework but the problem is its community, there is hardly any!
@sneezygibz6403
@sneezygibz6403 2 жыл бұрын
At least it's still software development. I joined IBM after graduation and was told I would be doing development but instead I'm here doing the opposite. System engineer. I'll be paying back my sign on bonus and leaving.
@hil449
@hil449 2 жыл бұрын
What does a system engineer do?
@meron6913
@meron6913 2 жыл бұрын
neetcode is really cool, it would have been awesome if you could add Go beside the other languages there.
@hello1000ize
@hello1000ize 2 жыл бұрын
Hey Neetcode, with your videos I was able to make it past HC! I applied to be an L3 Engineer. Unfortunately, today I was informed by my recruiter 2 weeks into the team match process that Google hit their 2022 hiring goals, which I guess isn't all too surprising given the recent announcement. How soon do you think Google will start hiring new engineers again?
@Aripoma
@Aripoma 2 жыл бұрын
OMG are you serious. I’m doing interview prep right now because I was hoping to interview with them 😩
@palakjain2505
@palakjain2505 2 жыл бұрын
I have heard about slow hiring there recently, didn't believe at first but looks real now after reading your comment
@hello1000ize
@hello1000ize 2 жыл бұрын
@@Aripoma I would say if you’re in the middle of the process just go through with it, they keep your interview scores for a year + a little prep never hurt anyone 🤞
@Aripoma
@Aripoma 2 жыл бұрын
Thanks @@hello1000ize do you have any tips on your preparation? I’m doing leetcode every day and trying to learn the patterns. Where you part of any discords/groups that helped
@dionng6119
@dionng6119 2 жыл бұрын
@@hello1000ize Loving your positivity! You’ll definitely succeed, all in a matter of time :)
@SiddharthRay1
@SiddharthRay1 2 жыл бұрын
nice insight bro 👌
@ssssss1738
@ssssss1738 2 жыл бұрын
Tiktok uses Golang as the backend language. Since Golang is from google, doesn't Google use it?
@aemericenglish2417
@aemericenglish2417 2 жыл бұрын
The only content im looking for many times. Solved
@vijaybenz9741
@vijaybenz9741 2 жыл бұрын
I am working at first year in an indian college we use engineering chem,eng phy,eng maths,eng drawing,python,english
@frozendoritos2316
@frozendoritos2316 2 жыл бұрын
GraphQL is not a tool btw, it is a query language for APIs. You can consider it a standard. There are multiple tools such as Apollo built for this standard, and most likely Google has its own tool. That's why it's no big deal that it was developed by Facebook.
@muluvadd7414
@muluvadd7414 2 жыл бұрын
Googler don't have privilege such as stack overflow which other developers gets. It's all about reading documentations and code to figure out solution. No more copy and paste from Stack overflow
@matts9216
@matts9216 2 жыл бұрын
Experienced undergrad: “yeah but no one uses Java anymore except for companies running applications from the 90s”. He was so damn confident too
@thamidudharshitha5515
@thamidudharshitha5515 2 жыл бұрын
Then you are mistaken xD
@stevena7007
@stevena7007 2 жыл бұрын
Dylan Patel Jellico Tn is a software engineer who plans to begin work with a car company soon. He lives in Jellico, TN, and moved to the United States when he was seven. Dylan Patel arrests attention in his community for his devotion to helping other people when they need it most
@w.e.b_b
@w.e.b_b 2 жыл бұрын
What in the absolute fuck?
@aUCLZlstrBh5upnFr7OmhNHag
@aUCLZlstrBh5upnFr7OmhNHag 2 жыл бұрын
I was surprised you don't extensively use Go lang
@NeetCode
@NeetCode 2 жыл бұрын
Yeah I wish
@johanlarsson9805
@johanlarsson9805 2 жыл бұрын
So.... Started with C++ in my early teens, certified java developer, knows graphQL, Microservice Specialist.. sounds like I would fit right in?
@usefulprogrammer9880
@usefulprogrammer9880 2 жыл бұрын
Shocked they aren't moving to a full TypeScript tech stack, definitely selling Alphabet, appreciate the insight.
@kennethkath6527
@kennethkath6527 2 жыл бұрын
Didn't know most of the frameworks you mentioned. It's now or never to explore
@grise123
@grise123 2 жыл бұрын
Great video, i expected some golang in the backend projects
@liorneuman2198
@liorneuman2198 2 жыл бұрын
i enjoyed the video. thank you
@rufiromang
@rufiromang 2 жыл бұрын
No Golang at all? It is promoted as being used to solve google's type problems. We use golang and frankly we are satisfied. It has native built in features for microservices that otherwise need framework to do so
@haxney
@haxney 2 жыл бұрын
Plenty of teams and projects use Go. Usually, your choice of language is made for you because you're working on part of a larger project which is already written in some language. You wouldn't want to have 99% of a product written in C++ and then have the last 1% written in Go, even if you like Go better.
@nevadain
@nevadain 2 жыл бұрын
I was surprised you dont use Kotlin instead of Java
@te1ephraq
@te1ephraq 2 жыл бұрын
Kotlin/Dagger2/Jetty or Spring/Jdbi, Kafka, Cassandra, biking distance from Amphitheatre Pkwy
@crazier192
@crazier192 2 жыл бұрын
So I'm wondering this: If you don't know Java or C++, should they transfer you to the backend team? Did they ask if you have a minimum requirements for the job in backend? (like knowledge of Java) or did they give you time to quickly learn Java/C++?
@NeetCode
@NeetCode 2 жыл бұрын
Most of the time you're expected to learn new tech as needed. If you're new to c++ for example, it's expected that the code reviewers will have to help you but you also need to learn on your own.
@jonobrien8848
@jonobrien8848 Жыл бұрын
so many internal tools sounds like a ton of overhead and tech debt
@ObtecularPk
@ObtecularPk 2 жыл бұрын
I used graphql on an open source :) just call the query to hit the API calls. Very easy
@kevincameron192
@kevincameron192 2 жыл бұрын
i just heard this man walk on thin ice for 8 minutes.
@bidiptodey435
@bidiptodey435 2 жыл бұрын
Hey, your doing great work, could please make a video on segment tree, lookin to learn to you⚡
@stunning-computer-99
@stunning-computer-99 2 жыл бұрын
The Lord Neetcode is here again! ❤️❤️
@nafaa-study
@nafaa-study 2 жыл бұрын
Not using git, that surprises me the most. How can you live without Git?
@binitrupakheti4246
@binitrupakheti4246 Жыл бұрын
Do you realize that other version control systems exist? Git is just the most popular one.
@nafaa-study
@nafaa-study Жыл бұрын
@@binitrupakheti4246 yes, I know. Git is most popular for a reason.
@mohdjibly6184
@mohdjibly6184 2 жыл бұрын
great video ...thanks for sharing
@tomxu1761
@tomxu1761 2 жыл бұрын
going to join google soon as a c++ programmer, this video great help before I join
@NeetCode
@NeetCode 2 жыл бұрын
Awesome, best of luck!
@adennis200
@adennis200 2 жыл бұрын
But most importantly: if you wanna work at Google you need to know algos and data structurs and stuff So you're not primarily tested on knowledge but on logical thinking, right?
@shubham900100
@shubham900100 2 жыл бұрын
My dream.
@ambarvita8513
@ambarvita8513 2 жыл бұрын
Angular + NestJs with NX tools
@yashptel
@yashptel 2 жыл бұрын
Surprised that you don't use Go
@omartahboub2900
@omartahboub2900 2 жыл бұрын
I bet you they have their own version (wrapper) of Spring Boot similar to most Tech Companies 😀 !!
@dr.merlot1532
@dr.merlot1532 2 жыл бұрын
But what is google working on? What is the goal? How much more can you improve google's search engine? Asside from that I don't know what google does.
@PouriyaJamshidi
@PouriyaJamshidi 2 жыл бұрын
Interesting that Google itself is not using Go instead of Java while other companies are adopting Go quite rapidly.
@username63822
@username63822 2 жыл бұрын
Probably it's much more easier and faster to hire a java developer rather then go developer
@Nicoya
@Nicoya 2 жыл бұрын
Go, C++, Java and Python are all well represented in back-end services. Which ones you end up using can vary a lot depending on what project you're working on, and often there's even a mix of languages within projects.
@briangurka8085
@briangurka8085 2 жыл бұрын
I'm imagining the internal framework he can't speak of is an abstraction of Spring Boot but I could very well be wrong
@AnnoyingErrors41
@AnnoyingErrors41 2 жыл бұрын
Bruh, don't plug in your ads without a segway or something.. felt kinda weird. Totally not against adverts but yeah.
@bls512
@bls512 2 жыл бұрын
I'm curious about what projects you featured on your portfolio that got you an interview?
@NeetCode
@NeetCode 2 жыл бұрын
I actually made a video about my resume a few months ago. It actually wasn't very impressive.
@riscnx
@riscnx 2 жыл бұрын
I am not surprised that python is not used in production. But I am surprised that Java is being used over Golang.
@mike200017
@mike200017 Жыл бұрын
Python is used a lot in Google, but not very much in production. Mostly tools, experiments, and non-critical things. The jury is still out on whether Python can seriously be used in production code. From my experience, in the current state of Python, both as a language and as a culture (that is, common coding habits, popular paradigms, etc.), it is not ready for production. The most serious issues are with (1) dependency bloat, Python makes it far too easy to import everything under the Sun, increasing the breakage surface, and (2) lack of static analysis, without static types and statically resolvable function calls, dependency tracing is nearly impossible to do ahead of deployment. You just can't maintain a production system under those conditions. As far as I know, Java is mostly used in Android-related developments, and for some legacy production systems. It is rarely anyone's preference, I would say, but sometimes a necessity. Golang has had a rocky time. I've seen it go from most favored or least favored and back again. But I think it has matured at least enough to begin to be seriously used, mostly for cloud GCP-like micro-services. Production services that are big and critical are almost exclusively written in C++, as far as I know. And that is true across the board (domains or departments).
@GreenSoap
@GreenSoap Жыл бұрын
We use Go, React, K8s, Terraform and GCP at my job. I do a bit of everything and i love the stack 😌
@jacobjablonsky231
@jacobjablonsky231 2 жыл бұрын
No Go for backend dev? That's a little surprising
@emmanuelu
@emmanuelu 2 жыл бұрын
Did you have a ton of experience using all the Tech you use at google before you got hired? Like graphQL and Angular; Or is that something you had to learn once you got the job.
@NeetCode
@NeetCode 2 жыл бұрын
Mostly had to learn as I go, so tbh I don't have a very deep understanding of most of the tech I use.
@emmanuelu
@emmanuelu 2 жыл бұрын
@@NeetCode that’s good to hear. Sometimes I hear about all the tech used in the industry and I get scared because I haven’t used a lot of them and I don’t know if I absolutely need to know them to get jobs
@hidayathidayat4469
@hidayathidayat4469 2 жыл бұрын
@@emmanuelu same
@2RosarioVampire
@2RosarioVampire 2 жыл бұрын
In general, specific tech stacks aren't necessary to know for large tech firms. This isn't necessarily the case for more niche tasks like Spark, etc. at senior+ level in some projects but overall, large firms have a very standardized interview process. Think of most tech firm interviews as an SAT process. At SDE1/2, standardized Data Structure and Algorithm problems. And of course as you have more experience, more and more slant towards system design and work experience.
@moestaxx286
@moestaxx286 2 жыл бұрын
@@2RosarioVampire very interesting , i am learning java i know some python as well but learning a lot of different tech stacks can be stressful sometimes lol. i’m way more interested in DSA @ system design tbh. glad to hear that bigger companies focus on that more bc i feel like languages come and go ..
@bennyleeofcharlotte
@bennyleeofcharlotte 2 жыл бұрын
Angular is sweet
@jayneversettle
@jayneversettle 2 жыл бұрын
Hi NeetCode Why do you keep your identity so confidential?
@mike200017
@mike200017 Жыл бұрын
The languages used at Google more or less break down like this, as far as I've seen over the years: - C++ for the core of all production systems and all heavy-lifting - Golang for glue-ing those systems together - Python for non-critical tools, "launching scripts" and experiments - Java for Android-related stuff - TS, Node.js, and friends for frontend (that's not my domain though) - an internal SQL dialect to observe what goes on in the systems - Protobuf for everything in between, literally-speaking Obviously, all those have exceptions based on legacy projects, interoperability, or some historical accidents. Finally, by use of compute resources, I don't know for sure, but I suspect it's about 99% C++, not because it's slow, obviously, but because if anything is big enough to consume a non-trivial amount of compute resources in Google's servers, then it's probably critical enough to have to be written in C++ for performance and maintainability reasons (equally important, IMO).
@michelchaghoury9629
@michelchaghoury9629 2 жыл бұрын
Please keep going we really like your work thank you. Does google uses spring boot?
@plankton383
@plankton383 2 жыл бұрын
I think it depends on the team. Generally, they use C++, Go, Python, and Java. And I assume they build their own frameworks.
@Mitsunee_
@Mitsunee_ 2 жыл бұрын
I'm mostly surprised about you not using Go at Google tbh. From the bit of insight I got working as a freelancer most backends are either "still PHP" or Go.
@ehhhhhhhhhh
@ehhhhhhhhhh 2 жыл бұрын
I'd like to hear some opinions about this, too, since I'm currently investing some time learning golang.
Google's Tech Stack (6 internal tools revealed)
9:09
NeetCode
Рет қаралды 309 М.
How I Failed the Google Coding Interview (and lessons I learned)
14:24
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
Why Most Google Employees Quit After 1.1 Years (On Average)
10:00
Aaron Jack
Рет қаралды 1,7 МЛН
The Tech Stack I Use as a Meta Software Engineer (Full Stack)
10:19
Cracking FAANG
Рет қаралды 4,5 М.
Why You Shouldn't Nest Your Code
8:30
CodeAesthetic
Рет қаралды 2,8 МЛН
Why I focus on patterns instead of technologies
7:55
NeetCodeIO
Рет қаралды 241 М.
Working at Google - First Impressions as a Software Engineer
8:05
What I Worked on at Google (as a software engineer 🤓)
9:22
NeetCodeIO
Рет қаралды 83 М.
I Asked Googlers How To Get Hired
9:44
Namanh Kapur
Рет қаралды 1,7 МЛН
Why I Quit Netflix
7:11
ThePrimeagen
Рет қаралды 537 М.
How principled coders outperform the competition
11:11
Coderized
Рет қаралды 1,8 МЛН
Programming Languages I used at Google (C++ rant)
6:14
NeetCodeIO
Рет қаралды 102 М.
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН