Nowadays I hear some sentences very often: “oh! I’m interested in the IT sector” or “in the lockdown, I have learned programming languages”. Have you ever thought how big the IT industry is or how many programming languages are currently used by people? The IT sector is thriving and it’s changing rapidly. In the past few years, it has changed extraordinarily fast; we can take an example from PHP. In the 90’s, PHP was ruling the web development world but within 15 years, it lost its realm to Java, Python, Node.Js etc. Employment of web developers and digital designers is projected to grow 13 percent from 2020 to 2030, faster than the average for all other occupations.
Back-end development is the path to power the web and it focuses on databases, scripting, and website architecture. Whatever you do in a website like purchasing, ordering, account login, account management etc, there’s back-end programming going on. While you are reading this article, there’s also a back-end code working and focuses on the functionality and logic powering the application you’re working on. The technology worked on is never directly seen by users.
matched.io has been working with developers for years and on behalf of matched.io, I, Tanzia, tried to dig deeper and find out the insight of programming languages.In this series articles,I’ll try to give an overview of web development and apart from that, I will also focus on web developers who are spending their time on programming for web development and explore further why they choose this path.
Java: An influential language for programmer
Let’s think of Java; it is the 3rd most popular programming language in the world. Not only is Java extremely versatile; it has also been used by developers for over 20 years. While Java is super popular with desktop and business software developers, it is less beginner-friendly than a backend language like Python. By using Java, you can do mobile application development/ Website development/ Database connectivity/ Image processing or GUI based programs. Java has a huge community to help with potential problems and a lot of tools for code analysis. I can’t name any language other than Java which is that well supported. Java has its drawbacks of course. Many features came to Java pretty late which leads to generation of huge amounts of third-party frameworks which are unnecessary at the moment, like Spring or Guava. But as they are successfully used in enterprise applications no one will refactor the existing code just to get rid of them.
Enlightenment from a Java developer
I had a conversation with a developer Mr. Mir Md. Asif Hossain regarding this issue, who has been working at Visa since 2022, so I asked him a couple of questions to have a better understanding of his thoughts as a developer. Let’s have a peek of his perception:
Can we start with an introduction of what you have been up-to?
I am a Staff Backend Engineer, on Visa. I am responsible for backend projects crucial to Visa’s success & global dominance. Before Visa I worked at roller coaster start-ups like Personio and Free Now.
Why do you choose Back-end development? Which programming language do you prefer to work with?
At the start of my career, I worked as a full stack developer but with time I have realised my passion is working on backend systems. I love working with backend API and infrastructures and my expertise lies in designing scalable backend systems. For most of my career I worked with Java and in the recent year I am working with Kotlin.
There are plenty of others but you choose Java. Why did you choose this programming language?
Java is one of the most popular languages to create scalable strong solutions. It runs on the JVM and is portable to any operating system. The language features make it an ideal choice for writing software that will be running on production for years to come. Moreover, it has a great ecosystem of tools and a vibrant community which is extremely helpful.
What do you like about Java? From your point of view, are there any limitations of Java?
In a word, JVM. Since it can run any JVM compatible language like Kotlin, it is an excellent choice for a polyglot team. Since it is a statically typed language, if you want to make a prototype quickly, it might not be an ideal choice to choose Java.
Is there anything which annoys you about Java? Like, if possible, you want to remove or change it?
Yes, several things like the semicolon, and parallel processing.
What are the things a developer should be careful while working as a back-end developer?
There is an ocean of tools and technologies, and it is extremely easy to get distracted. Pick an ecosystem and learn as much as possible. It should be easy to map it to other ecosystems.
What is your plan with this language? Do you want to keep working with this or you have a thought to switch to another one?
As I already mentioned, I mostly work with Kotlin which is a JVM language itself. Also, Java is adopting modern programming styles. I am psyched to try out those.
End of interview
Java is so well-entrenched now that almost nothing can challenge it. Not Scala, Not Groovy, Not Clojure, although many people are hopeful. From my point of view, Java will be relevant for the anticipatable future, even if you define it to only include new code, not legacy maintenance mode. We will see in future whether Java keeps treating its developer like naughty child or it starts treating developers like an adult. Huge thanks to Mr. Asif for sharing his perspective and experience!
See you all next week, with something new. Till then, happy coding!