saidshah Ahmadi

Good practices as software Developer


Your creative journey starts here.
  • Unlimited access to every class
  • Supportive online creative community
  • Learn offline with Ulearna's App

How often do you take care of applications...


Good practices are not one size fits all - they depend on your team



For project management, 69% of respondents use Scrum or Kanban. Scrum at 52% is somewhat more common than Kanban – at 33% – and 17% of respondents use both. Two out of 3 frontend developers use one of these two methods when getting projects done.


Companies where respondents did not report using either of these methodologies, tend to be mostly tech-first or digital-first companies, which rhymes with findings in my article How Big Tech runs tech projects and the curious absence of Scrum.


Unit testing is widespread among frontend engineers with close to 75% of respondents writing these kinds of tests. Integration and end-to-end tests are also common, with about half of respondents having written these tests.


What methods/good practices do you use in your frontend projects?


Code reviews are common enough within the industry, with 80% of respondents mentioning they follow this practice. What was interesting to dig into is where code reviews are less likely to be a practice? Going through those who don’t do code reviews, there is a strong connection between the size of the frontend engineering team and whether engineers do code reviews:


  • Engineers working at large companies are the least likely to not do code reviews.
  • Engineers working at companies with 50 or fewer employees are twice or more as likely to not do code reviews than those working at larger companies.
  • One-person companies – understandably – are more likely to do code reviews.


Much of the above should not be surprising: the more engineers there are, the more value code review bring not just in spotting issues, but also in spreading knowledge better.


CI/CD is widespread within the industry. It’s curious to see about a quarter of engineers not using CI / CD.


Not writing unit tests, not having CI/CD, and not doing code reviews are correlated.


This was one of the more interesting findings of this survey. Engineers who don’t do two of writing unit tests, having CI/CD, and code reviews are likely to not do all three.


This finding should not be a huge surprise, as these three tools are connected. CI/CD makes less sense when there are no automated tests to run. Most code review tools integrate seamlessly into CI/CD tools.


Still, this finding suggests that by introducing unit testing and setting up CI/CD, code reviews will likely follow. Or, perhaps the other way: engineers who want to do code reviews tend to write tests and will set up CI/CD.


Engineering practices worth mentioning which survey respondents brought up are below. Use these as inspiration to try out other approaches, if you’ve not done yet:

  • Trunk-based development,
  • Feature flags and feature toggling,
  • Pair programming,
  • Linting,
  • Code style guidelines,
  • JSDocs,
  • Stakeholders Map,
  • Design sprints,
  • Prototyping,
  • Semantic releases,
  • “Fix-them-together days”,
  • Visual regression tests,
  • Extreme Programming.


SEO is still the underdog - but for how long?




Only 10.4% of frontend developers always take care of SEO and 16% do that often. However, as the saying goes, the devil is in the details. This could be because many respondents create closed applications (dashboards, admin or user panels, some sort of management systems), where search engine optimization is not the most crucial part.


How often do you take care of application's SEO


This is what we thought at first! However, we were relieved when we looked at the remaining options and noticed the following:

  • A total of 80.5% of respondents take care of applications responsiveness either always or often.
  • 73.5% of applications have their performance (always or often) kept in mind.
  • A whopping 88.1% either always or often take care of UX.


It makes us very happy because all these elements (responsiveness, performance, and UX) are also important for SEO.


With Google (and other search engines) putting a lot of pressure on making the Internet a great place, the User is at its central point. Therefore, SEO grows way beyond just a bunch of HTML tags and content in 2022. And, the important part is, It goes for websites, but also PWAs and mobile apps, too!


What is important for SEO on the frontend side?


or starters, the responsiveness. It is a must for most projects that are meant to work on different devices. Recently some platforms (Twitter) started hinting at the retirement of AMP (another approach to SEO-friendly mobile version for web apps). This makes RWD even more important.


When it comes to performance, this can obviously include many things. From an SEO perspective, it’s all about PageSpeed measured by not only speed but also Page Experience. In November of 2020, Google added three new page experience signals that makeup what they called Core Web Vitals. These became implemented as Google’s ranking algorithm around June 2021: Largest Contentful Paint (LCP), First Input Delay (FID), and Cumulative Layout Shift (CLS). All three of them are almost the sole responsibility of the frontend.


Next is User Experience, which is a very broad subject. However, one thing is certain: a lot of SEOs already use the term SXO to indicate that the typical Search Engine Optimisation must include User Experience.


The Search Experience Optimisation, then, is about combining the technical optimization for Google (and other search engines) together with making the website best for the Users. What can be better to serve the users in the exact way they expect, behave, and prosper in our app’s ecosystem?


But there’s also another very prominent upside to this. Happy users = retaining (or returning) users.


Good UX affects conversions, helps retain the users, or makes them want to return for more experience. All of these usually mean better monetization, which is at the center of most commercial apps.


Accessibility



Firstly, I will start with the very important notion that accessibility should be already considered at the early stage of gathering product requirements i.e. do you aim for WCAG 2.1 AA standard, and do your customers expect this implementation. Back to the results!


How often do you take care of application's accessibility



I was shocked that the “always” answer was as low as 17%! This leads me to think that frontend developers are still reactive, rather than being proactive in their approach to accessibility. What I have seen in the past few years is that engineers are now proactively running automated accessibility tools as part of their CI/CD which is certainly helping to upskill engineers and other key members of the software team.


The surprising aspect for me is that accessibility is not deemed as important as user responsiveness, performance, or user experience. I have a feeling that now that there can be legal ramifications towards companies due to poor accessibility of their products, I expect this to change in the future.


Comparing this with the question about taking care of accessibility from 2020 – given that the categories are somewhat a blanket ‘yes’ or ‘no’ – I feel that most frontend programmers feel they care about accessibility, though in most cases it will only be an ad-hoc review or audit.


I hope in the upcoming years we see accessibility like security, and we will design software products with accessibility in mind. Similar to how security has been of utmost importance in the past few years.



Share Your Stories, Thoughts, and Ideas with the World.

saidshah Ahmadi

Front-End Developer

0 0

0 Comments


Cookies

We use cookies to ensure you get the best experience on Ulearna.You can check our cookies policy here.