Joining Nrwl š³ š¦
Alright, so yes, I joined Nrwl š!! The title should rather be: 5 weeks at Nrwl š as this week Iām starting my 6th one. Hugely delayed blog post, but hey time at Nrwl flies like mad! So here we go with the entire story.
So what is Nrwl? š¤
If you havenāt heard of us already, Nrwl has been founded by ex-Googlers and Angular team members Jeff Cross and Victor Savkin. Our main focus is to help big enterprises speed up by helping them scale the development of high quality software across the entire organization. How? With monorepos and a ton of expertise around engineering, consulting and training š. Our strengths is mostly on frontend development with JavaScript, Angular and React. We directly collaborate with our clientās teams and guide them through difficult architecture decisions, help them implement and scale it in the long run via automation and tooling.
We also heavily contribute to open source! Our two most known products are Nx Console and Nx (and more is coming :heart_eyes:).
Wanna learn more? Go visit our website at nrwl.io. Let me quickly also outline our main products (OSS & not) which you might have heard or used already.
Nx
Website: https://nx.dev/
GitHub: https://github.com/nrwl/nx
We at Nrwl believe in monorepos. Google, Facebook, Microsoft or Twitter are known for having huge repositories containing most of the companyās source code. Rather than having one git repository per project/application, thereās just one single repository containing all (or at least a logically grouped set) of the projects and applications. The reason is simple: allowing teams to move fast by avoiding additional overhead caused by version management and integration. In a monorepo, you share code by just linking libraries, thereās no need to release and publish them first. Just think about some API refactoring. If you distribute libraries over package managers, making substantial changes is getting really hard. Itās still tough in a monorepo, but basically all of the code is in your IDE. So you can just refactor in a branch, launch tests and fix the broken code.
As you might guess now, this also comes with downsides. If used at scale within large enterprises, you definitely need a lot of automation and tooling that supports you in this process. Just a simple example: building the entire repo in your CI build is simply not possible as it would take too much time (and thus break the benefit of having short feedback cycles).
Nx helps here! Nx understands your codebase and builds a dependency graph behind the scenes that allows it to only build your affected apps and libraries, thus dramatically reducing build times. Moreover v8.12 comes with an advanced distributed cache. But read more about it on our blog.
NxConsole (formerly known as Angular Console)
Website: https://nx.dev/nx-console
GitHub: https://github.com/nrwl/nx-console
Nx Console is a Visual Studio Code extension for Angular and Nx. If youāre not the CLI type of person, then this might be for you. Nx Console automatically finds available schematics in your workspace, thus allowing you to easily control and execute Angular CLI / Nx commands from a nice UI interface.
NxCloud (formerly known as Angular Console)
Website: https://nx.app
NxCloud is our newest product that makes Nx even more powerful. Nx is already highly optimized for monorepos, having its dependency graph and āaffectedā commands, allowing to only build/test/lint whatever has really been affected by your changes in your GitHub branch. But still, if you have a large monorepo, or your branch simply changed a lot of different parts, running builds/tests locally or on CI can still take a long time. And developer time is precious as we know :smiley:.
What NxCloud does is to enable caching for your workspace, not just locally but distributed caching. What that means basically is that whenever one of your co-workers has already built/tested/linted a given lib/app, you wonāt have to do it again (unless you changed something ofc). As a result, build times may go down drastically as can be seen in the next diagram
Curious? Sounds cool and something you definitely want to have? Read more on our official blog announcement or check out the NxCloud video
{{< youtube pwG20nNTEQc >}}
How is it to work at Nrwl? Did you move to Toronto?
First of all: itās awesome, love it :heart_eyes:!! And no, I didnāt move to Toronto, but I rather work full-time remotely from home :smiley:.
Nrwl is great. I get to work with different clients around the world and work on Open Source. And the best of all, with a highly skilled and amazing team! Everyone is really supportive, open to help out each other. Itās been 5 weeks now and I already learned a ton!
Itās the first time for me to work remote full-time. I did work from home from now and then and of course when I worked for my freelance job. But never full-time so far. Till now itās great. I love the fact I donāt have to commute each day, and especially to be able to spend more time with my little baby boy :baby:. Thatās priceless.
I also love the fact to go for a quick run over lunch, come back, have a shower & continue working.
Communication with the team works like charm. We communicate through Slack and Zoom meetings. Meetings are super efficient and we even have a lot of fun :smiley:
Hereās the official blog post about me and others joining Nrwl in 2020.
We Are Now Taking On New Clients in Europe!
Nrwl expands into Europe. After Jo Hanna Pearce, me and Rares Matei joined in January to reinforce the European team (and there are more to come š). With that weāre now ready to take on new European clients š. So if youāre curious, let us know!
What about your Freelance Training, Blogs, Videos and Egghead?
Everything will continue just as normal. Of course I wonāt be doing any freelance training any more on my own, but rather through Nrwl. I will continue to blog and publish videos on my Youtube Channel & Egghead.
Blogging and publishing content in general has been a big passion for me for over a decade now. And ultimately it is the reason I became a Google Developers Expert, why I started to speak at conferences and now to get the job at Nrwl.
Also, if you donāt wanna miss anything, subscribe to my Newsletter.
Will you continue to speak at conferences and events?
I definitely will! I love to speak and engage with the community. Expect it to be rather slow this year. Not because of joining Nrwl, but rather because I try to reduce travelling and stay more at home with the :baby:.