It’s all about Angular

With the release of Angular 4 last month and a new JavaScript framework in what feels like every 5 minutes, I wanted to find out what exactly was going on.

To get a grasp of what’s happening with one of the most popular frameworks used in web development I caught up with Meligy. Meligy runs the Angular usergroup: ng-Sydney and is also a senior consultant at Readify (so you know he’s good).

Meligy explained what’s it all about. The Angular 4 upgrade, how this is affecting the community, differences between AngularJS, Angular2 and now Angular.

What also unravelled is Meligy’s fascinating journey from being a backend focused developer to falling in love with client side programming.

Here’s what went down:

Sam: So what’s new with AngularJS?

Meligy: Firstly we’ve got to be careful when referring to AngularJS now as the creators won’t like it, as, AngularJS is for version 1. For version 2 onwards, we can refer to this as Angular.

SE: Yeah, I’ve heard this! Everything from now on won’t be Angular 4 or 5 – it’s just Angular.

M: Yeah that’s right. I’m mentoring 5 teams at the moment that are running Angular 2, 2 of which are upgrading to 4 already. I upgraded just yesterday and it took me a day (because of issues with a non-maintained 3rd party library not Angular itself). Upgrading from 2 to 4 is seamless. Upgrading from 1 to 2 is probably too much, might not even bother!

SE: So what made AngularJS so good was also its biggest weakness?

M: The idea behind AngularJS was to that you could use it on any page, drop some JavaScript script on a page and get it going.

It worked very well, compared to Knockout, because it could detect your JavaScript changes without explicit code, but that caused performance issues when pages grew, too many things to track. The only way to make AngularJS faster was to disable features and this was a problem.

It was originally designed for designers to use and get something interactive without knowing too much JavaScript. Once developers started using it, it started to add more features, but due to backwards compatibility, the old features were still there. It was not obvious what features you should use and which you should avoid.

So Angular 2 (or just Angular) was born to fix this, which meant they had to rewrite the whole thing.

As the team likes to say it, AngularJS (v1) is a framework. Angular (today) is a platform.

It’s built on Typescript and comes all of its awesomeness. It comes with its own CLI tool to generate new projects, create optimized builds, and run your unit tests, which is creates skeletons for by default.

It is perfect for writing big single page web applications and especially BIG ones.

The ideal case is when your entire website is going to be a single page web application. and with the way things are going with web development most applications are heading this way anyway. Once you add some rich client interactions to your website, the users want more.

SE: What’s exciting about where Angular is going?

M: There are a few things happening, but the biggest one might be, server side rendering with Angular Universal.

Angular Universal allows to run Angular on the server, and then the generated HTML already has all the page information needed for some search engines, or for Facebook and Twitter previews when the user chooses to share the page.

It used to be a very close 3rd party work that the Angular team hosted on their official sites, but now it’s becoming part of the main Angular project itself. I expect it to get way better this year.

SE: What do you love about Angular 4?

M: What I really love about Angular 4 now actually doesn’t have to do with Angular 4, it’s that it is built on the latest version of Typescript. TypeScript 2.1 had a breaking change from 2.0, which forced Angular 2 to freeze support for TypeScript at 2.0. Now this situation is fixed, and unlikely to come up again, so the latest versions of Angular allow me to use the latest version of TypeScript as well.

Typescript just feels likes C#, you find silly errors at compile time instead of at run time. People can pick it up much easier than JavaScript and they are learning about JavaScript in a different way, because TypeScript packs the standard JavaScript features with the same syntax.

SE: What advice would you give people starting out in web development?

M: Play around with one framework/platform at a time. Spend two weeks with React.js, two weeks playing around with Angular, with Vue, you name it; and immerse yourself with them one at a time. This will allow you to decide what works best for you and you will be able to focus on this particular technology without being distracted by others.

JavaScript trends in Sydney

I saw this pic and actually Lol’d… With all of the buzz of Angular 4 being recently released, let’s put laughter aside and take a look at the JavaScript scene here is Sydney…

The battle between the two most popular frameworks, Angular and React continues in Sydney with quite an even split between both frameworks. I have noticed that React has been adopted at a much faster pace over the past year and it will be interesting to see the impact of Angular 4 which is currently in release. I personally know of one client that is rolling Angular 4 on their next project. It will be great see its impact in the tech scene here in Sydney.

Traditional enterprise sites seem to favour the popularity of Angular/2 and this doesn’t seem like it will shift anytime soon. It’ll be interesting to see how quickly they adopt Angular 4 having noticed sites that are rolling out projects with Angular 2. With only pockets of financial institutions looking to experiment with React.js it has been much more popular with digital agencies, start-ups & media.

Here’s the data:

Linkedin claims to have 11,594 engineers in Sydney with JavaScript as a skill set and are working with this in some capacity – however this will include full stack developers (.net, JAVA and JavaScript, front end developers, UI developers and possibly some UXD’s in there as well – who knows!)

After further digging (and insane Boolean searches) I discovered this:

There is 1430 engineers that are skilled up and are currently working with Angular.js (58%) – of the market (CBA, Westpac, BT Financial, Macquarie Group, Atlassian, IAG, TATA, ING Direct).

953 (38%) are skilled up and currently working with React JS (Biggest tech teams that support this are Atlassian, CBA, IAG, Domain.com.au, Qantas, Fairfax media, Nine, DiUS, William Hill).

While only 105 (4%) are currently working with Angular2 (AMP, Telstra, Macquarie Group, PWC) being the early adopters of this technology.

So from this data there are 2488 software engineers/front end developers in Sydney working with either Angular, Angular2, or React.js how this is represented visually is this:

*This data has been pulled from LinkedIn as of 24/03/17 and represents software engineers with active skills in either Angular.js, Angular2 or React.js

While I admit that this is not 100% accurate, it does give us a nice picture of what the JS world currently looks like in Sydney.

Did you Node?

With the popularity of Node.js ever increasing we are seeing more organisations adopt this technology as its server side programming and moving away from traditional ASP.net/Java environments. With early adopter’s in media, finance and various start-ups will we see this move into other industries?

This market pressure has been a contributing factor to increasing the price of contractor’s in this space; especially if you have been a part of the teams that were the early adopters of Node.js and have rolled out projects at an enterprise level previously.

Node.js is increasing popularity within financial services and any industry that has a heavy reliance on data with its advanced capabilities as a data visualisation tool.

Wow, this is great Sam – how does this help me and what should I do?

You can’t future proof your career by being an expert in a particular frame work. It moves too quickly, what’s hot today might not be tomorrow. Angular 3 got bypassed, Angular 4 is coming out yesterday and Angular 5 will be here for Christmas*.

What separates you as a developer/engineer is your knowledge of the fundamentals. The best engineers I have worked with over the past year have a clear understanding of algorithms and data structures. They have also developed exceptional ability with JavaScript from this knowledge. Here is a great article that explains this and what this looks like in the JavaScript world.

These engineers look to frameworks last, are not married to any particular one, and are interested in what tool is right for the particular problem at hand. These developers are always constantly learning about what works for what.

This curiosity and building on your knowledge future proofs your career in JavaScript software engineering. You can adapt and pivot frameworks as they will inevitably change.

Thoughts?

Thanks for reading!

Tips on Hiring JavaScript software engineers in today’s market

JS_pic

After a few long years I’m back and stoked to be able to relaunch this site.

The past year has been a roller coaster of finding my feet and grounding myself in the JavaScript community and I’m still just scraping the surface! It’s seen me place some amazing talent with clients that I’m proud to partner with.

These include some of the best start-ups, financial services, telco’s, media agencies and software development houses in Sydney.

They all have similar things in common – they value the service that I provide which is finding them talent in the software engineering space they aren’t able to source themselves. They also provide an environment that fosters growth, innovation, communication and provides a challenging working environment for their staff.

The awesome Front-end talent that I have worked with over the year are naturally drawn to these companies due to this environment – and funnily enough, even though the market has pushed candidate salary expectations through the roof, this is not the main driver for movement.

Engineering is constantly changing, and so are engineers. These people are pushing the boundaries of software engineering with this incredible technology. A quality engineer is thinking outside of the box in how they approach problems and deliver on these solutions.

What I have learnt in the last 12 months is this; whilst framework experience is ideal for short term hires and engagement, it should not be that important for long term permanent hires. This is because, and this is constant feedback that I get from the people that I do business with, technology can be taught (even bluffed). What is difficult to match is culture, attitude and habits.

One of the most imperative strategies for successful long term hires and in hiring talent (which I have adopted) is seeking out culture fit and be sure of quality software engineering practices.

Every framework can be taught and picked up quickly if people understand the fundamentals and have the right attitude. These candidates, who may not know React.js or Angular2 WILL NOW be able to pick them up quickly if provided the right environment. What they also offer is their ability to influence others of correct software engineering habits, bringing culture and correct engineering principles to your team.

Here are some tips for building long term sustainable teams of JavaScript software engineers:

  • Have a team that foster’s innovation, growth and change
  • Get people in your team that have knowledge of the fundamentals of software engineering and JavaScript
  • Promote a continuous learning environment
  • Don’t get caught up on particular framework knowledge when hiring – while it might be your need, attract good talent by offering this as a skillset to be taught NOT required.

I’d love your thoughts on this… please feel free to comment/share/like – if you ever want to reach out contact me on here, twitter @sydjstalent sam.elderfield@ambition.com.au

Picture credit goes to @seth_bergman thanks mate!

Cheers,

Sam

 

Create a free website or blog at WordPress.com.

Up ↑