Joseph Evans
Joseph Evans

Web Developer

Blogger

Entrepreneur

Mentor

Joseph Evans

Web Developer

Blogger

Entrepreneur

Mentor

Blog Post

Technologies & Beyond

June 13, 2019 DevOps, enterprise, tools
Technologies & Beyond

To be a full stack software engineer in this day & age, it requires a lot, not so much natural talent as such, of course it helps, but to be a successful developer, it requires so much more than just the natural ability to create software. To be a truly successful developer, one needs to go beyond just having technical abilities, beyond managerial abilities, one thing that I’d say is crucial is the desire to do better, a passion that makes you want to learn ‘x‘, ‘y‘ & ‘z‘ at God knows what time in the morning/night.

The need for a passion as initially mentioned, you need to be passionate about your work as a developer, take my case as an example, I’m simply a junior developer at this moment in time. Yet I use an insane array of technologies, tools, paradigms, etc, the best part is that these are just technical skills, these skills have fundamentally nothing to do with the ability to define project scope, requirements, etc.

Technologies & Stuff I Use

So, if you’re curious, here’s a list of some of the technologies that I use on a somewhat regular basis, now of course, I’m not an expert in all of these technologies, but I have some level of knowledge with regards to all of them. Of course I have strengths in some technologies, tools, etc that are much greater than say my ability to use technologies like Jenkins to their full capabilities.

Front End Technologies

  • HTML
  • CSS/SASS
  • JavaScript/Node
  • React
  • Redux
  • WebPack
  • ESLint
  • Prettier
  • TypeScript
  • jQuery
  • D3.js

Back End Technologies

  • Java
  • JSF
  • RestEasy
  • Hibernate/JPA
  • Spring
  • JBoss
  • Apache
  • PHP
  • PDO
  • Python
  • Node
  • ColdFusion

Database Technologies

  • MySQL
  • T-SQL
  • MongoDB
  • SQL-PL
  • PostgreSQL
  • Redis

Testing Technologies

  • JUnit
  • Mockito
  • Selenium
  • Jasmine/Jest/Enzyme

Development Technologies

  • Git/SVN
  • Eclipse
  • PHPStorm
  • Server Management Studio
  • MySQL WorkBench
  • Confluence
  • Jira/Trello/Redmine
  • NPM/Maven/Composer
  • Jenkins

Paradigms

  • OOP
  • Functional
  • Concurrency
  • Declarative
  • Event Driven
  • Parallel

… Etc.

There are other technologies such as Apache Camel, Solr, etc, that I could also list, including Azure, Kubernetes, Docker, etc. I’ve some knowledge with a very wide range of technologies, however if I were to list every single one, I think this article would be longer than a dictionary. I can’t help but emphasise that with this list of technologies, there’s only a few that I’d consider myself a professional with, I’m by no means a ninja when it comes to all of these technologies, if only.

Conclusion

In order to stay ahead of the game, in my opinion, you need to spend as much time as possible conducting experiments, collaborating with others & doing homework, just seeing how other people do things could inspire you to do things in a much more efficient and/or effective manner. If you take a look at my previous article, there I openly admit that I got to a point where I just couldn’t take much more in, so I just eased off with the learning & spent some time going to the gym, instead of constantly trying to learn new things.

It’s also important to learn new technologies to some extent or another, partially because they tend to spread like wildfire, soon everyone uses them & they’re on every job posting you can imagine. However, I would advise to not just use a new technology simply for the sake that it’s popular & all the cool kids are using it, I’ve come across many scenarios where people use certain technologies when there’s simply no need, they’re essentially over-engineering their ecosystem with no-little advantage.

Taggs:

Leave a Reply

avatar
  Subscribe  
Notify of