re: What should I learn next to boost my skills? VIEW POST

FULL DISCUSSION
 

Backend dev who chose a Full Stack/DevOps path here, so probably I am biased to push into a "jack of all trades" direction, so I'll split this a bit up to tell you what I think are hot and evergreen topics right now.

I think what you should learn next partly depends a bit on how you want to advance your skills. Do you want to be fully specialized in front-end? Or do you want to have a more general skill set? While both seems to be a valid decision, I would recommend at least knowing certain core concepts of the sorrounding dev and ops world since it makes colaboration with the respecting groups easier. When focusing on building static customer websites, many thinks might not be relevant, but when working on mobile apps (especially ones with a cloud backend) and webapps, you might come over one or the other.

Anyways, here's my list:

General

  • Testing, Test driven development, automated test frameworks etc. As many said before, this can help greatly improve your code.

  • basic software architecture principles and design patterns. As your Apps grow and add more features, you can quickly end up with a pile of spaghetti code. This helps you prevent that pile from getting too big and keep it maintainable

  • refactoring techniques. Helps you structure your pile of spaghetti code into something more structured.

front-end

As I said I am not an expert here, so what I mention here might only be a small part:

  • reactive design/React and React-native
  • Redux (does not mean to neccessarily use it, but know what it's about in case you need it)
  • ES6
  • responsive design
  • know that there's other frontend libs apart from React and how they differ. Like vue.js and Angular

Build/Release engineering

  • Semantic versioning helps you piss off way less people when starting to build libraries, APIs etc.

  • Project modularization, although I am missing good resources on this topic for learning on you own (I have best experiences with being mentored on this)

  • Package managers such as npm and yarn

  • Build automation tools such as gulp and grunt

  • Continuous integration, delivery and deployment

Backend

  • Relational Databases and their benefits and tradeoffs

  • Big data stores and their benefits and tradeoffs. Getting to know the types like Key/Value, Wide column, Time series and document store is more important than the implementations, but if you want so, go for Cassandra, Redis, ElasticSearch, CouchDB, MongoDB, InfluxDB.

  • Also going in the direction of datastores but a bit different: Blockchains such as Bitcoin and Ethereum

  • API design, REST principles

  • Queueing, PubSub messaging systems. Again if you want to look for a Framework, go with Redis PubSub or Apache Kafka

  • On the framework side, guessing that you want to stay within the JavaScript space: node.js (also ayo.js depending on how things will evolve in the future), express.js, integration with the data stores mentioned above

  • Service oriented architectures, Microservices

  • Serverless

DevOps

  • Containers (Docker and Rkt)
  • Container orchestration (Kubernetes, Mesos, Docker Swarm)
  • Cloud providers and the possibilities they offer (AWS, Azure, Google cloud)

Security and legal

  • Get a basic understanding for encryption and signature
  • Get a basic understanding for most common attacks and how to prevent them. Have a look at OWASP resources
  • Get to know the most common software licenses and what they do and do not allow.

EDIT: Forgot one section that seems important to you:

Mobile

  • React native for cross-platform (not mentioning React and RN libs explicitly since that should go hand in hand)

  • basics of Android SDK and iOS SDK (permission systems, basics of how stuff is built, APIs they offer, etc.)

  • App/Play store guidelines and review guides.

  • Know mobile centric toolings out there Fastlane that might make your life easier if you can make an educated decision about which to use

I hope there's something helpful for you and everyone else in here and the sheer amount of possible topics doesn't intimidate you.

Happy learning

code of conduct - report abuse