How to become a true full-stack developer
Tags: career, developer, programming
Published: 2021-03-15 11:03:22

## What is the standard definition of a full stack developer

When you look at the majority of `full-stack developer` and the majority of job offers that look for a `full-stack we only have two big part that is dug up:

> the classic front end/back end duo

front end dev capabilities being often only js, little HTML, and little CSS.

back end capabilities, often only js and database.

But that's not my definition of what a `true full-stack developer` scope of knowledge should cover. Let me dig in now in all the other parts you should start to get interested in and learn to achieve this scope.

## What you should aim for calling you a true full-stack developer

the list :

- Front and back
- HTML/CSS
- CI/CD
- Infrastructure
- Agile
- Technical Monitoring

---

### Front and Back

Front and back are the main tools in your daily work and you should focus your first phase of learning on these two subjects.

### HTML and CSS

Get specialized in using a CSS framework. I recommend `Tailwind` as it forces you to know your CSS and also lets you think hard about your interface.
You should be able to put an interface together from a template made by your designer

### CI/CD

As a modern software engineer you will deal with `git` **A LOT** and a proper way to handle git is to include CI/CD process to ensure quality and add automation things to gain time and quality for your project. Large-scale applications will have a strong CI/CD in place.

That means that sometimes you will handle use cases that include CI/CD to be fixed or created. Knowing your CI game will make your proposal of improvement and fix more impactful.

### Infrastructure

We all know this now but *cloud-computing* is the thing at the moment. Your production environment, pre-production, and even sometimes local will work on services of famous cloud provisioner like `AWS`. Starting from this simple fact we can conclude that a big part of what is going on behind your daily work is Infrastructure and it's much more accessible than you think.

Knowing your infrastructure game will allow you to be efficient on your codebase behavior and also allow you to build up a little working POC fast. **I strongly recommend learning Infra stuff and even try to pass a certification** as it let you learn a lot on the subject.

You will need it for logging system and track, alert setup, managing some DB understanding in deep your CI system, manage the load on your app, and many other things.

### Agile notion

Yes, we all are now using the famous agile method in various ways like `KABAN` and `SCRUM` but do you truly understand what it means, except doing daily meetings and 2 weeks sprint?

Agile has one goal: delete key blocker points and relief a team from a pain point. A developer as he is a daily user of this working method should always be proactive on how his team apply the agile method and find a way to fix pain point.

Rework your daily meetings challenge the importance of each meeting and work with your PO or scrum master hand in hand to improve your working process (*extreme programming - a clear definition of done, the definition of ready, etc...*)

### Technological Monitor

AND MOST IMPORTANT overdo `technological monitor` about web dev, and **SHARE** everything you learn that is in the scope of your activities, It could be `VSCODE` last update, share benchmark of apple M1, explain a lib to co-workers or just do R&D project with them or on your own

## Conclusion

As described above, Web development covers a large scope. To conclude I will give you one last tip. Don't overlearn on all of this subject.

My best advice is to know a little of all but search for solid notions and to specialize in only some of those subjects.

We are developers, our main activity is to code. Just get rock solid on the back end and front end dev and then use some of your time to learn all of those side subjects but do not become a pro on it, you are not a DevOps you are not a Scrum Master or a tech guru that do bigs conferences.

You're a software engineer that need to understand and challenge all this other subject to be better at what you do - coding.

*cover image link:* <a href="https://fr.freepik.com/photos/technologie">Technology picture created by pressfoto - fr.freepik.com</a>