How To Be A Full Stack Developer In 2022

Поделиться
HTML-код
  • Опубликовано: 4 окт 2024
  • What is a “full stack developer”? Full stack developer has become a common way for people to describe themselves, but what does it really mean, and does it matter? The simplistic view is that it means that you write front-end code and back-end code, but it's all really just code, and doubly so if you are writing front and back with the same tech. So that doesn’t really mean very much. That would be fine though if there weren’t some underlying kudos associated with the idea. It seems to be assumed that full stack development is better than other development. That these people are more rounded and more useful as team members. So what does it take for that reading to be true? What do you need to be a full stack developer in the sense of a more rounded, more valuable member of the team?
    In this episode, Dave Farley author of “Continuous Delivery” and “Modern Software Engineering” talks about what makes us more rounded as developers, and more “full stack”, and what he thinks really defines the idea if it is not technology alone.
    _____________________________________________________
    🚨 MY TDD COURSE IS AVAILABLE NOW! 🚨
    Learn to write great tests, and how to use those tests to improve the design of your software: with step-by-step guidance and demos by Dave Farley, and practical exercises for you to learn TDD and BDD. Available to start now!
    ENROL HERE 👉 bit.ly/3JB5smY
    _____________________________________________________
    📚 BOOKS:
    📖 Dave’s NEW BOOK "Modern Software Engineering" is now available here ➡️ amzn.to/3DwdwT3
    In this book, Dave brings together his ideas and proven techniques to describe a durable, coherent and foundational approach to effective software development, for programmers, managers and technical leads, at all levels of experience.
    📖 "Continuous Delivery Pipelines" by Dave Farley
    paperback ➡️ amzn.to/3gIULlA
    ebook version ➡️ leanpub.com/cd...
    📖 The original, award-winning "Continuous Delivery" book by Dave Farley and Jez Humble ➡️ amzn.to/2WxRYmx
    NOTE: If you click on one of the Amazon Affiliate links and buy the book, Continuous Delivery Ltd. will get a small fee for the recommendation with NO increase in cost to you.
    -------------------------------------------------------------------------------------
    📧 JOIN CD MAIL LIST 📧
    Keep up to date with the latest discussions, free "How To..." guides, events, online courses and exclusive offers. ➡️ bit.ly/MailListCD
    -------------------------------------------------------------------------------------
    CHANNEL SPONSORS:
    Equal Experts is a product software development consultancy with a network of over 1,000 experienced technology consultants globally. They increase the pace of innovation by using modern software engineering practices that embrace Continuous Delivery, Security, and Operability from the outset ➡️ bit.ly/3ASy8n0
    Octopus are the makers of Octopus Deploy the single place for your team to manage releases, automate deployments, and automate the runbooks that keep your software operating. ➡️ octopus.com/
    SpecFlow Behavior Driven Development for .NET SpecFlow helps teams bind automation to feature files and share the resulting examples as Living Documentation across the team and stakeholders. ➡️ go.specflow.or...
  • НаукаНаука

Комментарии • 91

  • @ContinuousDelivery
    @ContinuousDelivery  2 года назад +6

    🚨 MY TDD COURSE IS AVAILABLE NOW! 🚨 ENROL HERE 👉 bit.ly/3JB5smY
    Learn to write great tests, and how to use those tests to improve the design of your software: with step-by-step guidance and demos by Dave Farley, and practical exercises for you to learn TDD and BDD. Available to start now!

  • @VideoWow7184
    @VideoWow7184 2 года назад +34

    Great video. To me a fullstack engineer is anyone who isn't afraid to get involved at any level and is comfortable learning and applying a wide range of new things. Some people just like to focus on a specific area, while others like to be involved in everything.

    • @FelixZwirn
      @FelixZwirn 2 года назад +3

      I personally even expand it to the hole process of creating software.
      I view myself as a fullstack software engineer, because beside coding (Java, Python, TypeScript, ...) I'm also able to perform as a product owner, scrum master or even as a classical project manager.

    • @centerfield6339
      @centerfield6339 2 года назад +2

      @@FelixZwirn I go even broader. I consider myself full stack because I'm not afraid to eat a giant pile of pancakes every morning. There's nothing technical about being a full stack software engineer.

  • @jimraynor3155
    @jimraynor3155 2 года назад +12

    Dave, I have watched, and benefited from, so many of your videos. By using your advice, I've cultivated a sense of peace and competence with my work. That feeling has been instrumental in getting me working again after a over-a-year-long depressive slump. I love you Dave. Thank you.

    • @ContinuousDelivery
      @ContinuousDelivery  2 года назад +2

      Wow! I am very pleased to have been of some help. Good luck.

  • @hazemhatem9701
    @hazemhatem9701 2 года назад +2

    as a full stack developer with 5 years of experience, I started with small e-commerce websites until the real-monitoring system for radars.
    we are very useful for a prototype or proof of concept for an idea but it depends, on how much the person is willing to learn the scope of the problem, what kind of skills you are masting because we have a time constrain.
    so what happened on a large scale, I'm not a full-stack developer, I'm a backend developer because there is no time to focus on problems on both sides.
    to be honest, no one will pay you more salary than usual but you are at the same time doing a job based on 2 roles, so buy your time and focus on something.
    NOTE:
    it is also a good start for any developers who practice it, by the time you will feel that you are able to build any system and learn any kind of skills you want in a short time besides focusing on the big picture, knowing the problems about (backend and frontend) will really help you to improve your communication skills and make good decisions , focus on abstraction more than tools, and you will become a good problem solver.

  • @elfnecromancer
    @elfnecromancer 2 года назад +17

    I think you nailed it in the end: The distinction is more between a good and mature developer and someone who's not there yet. It's not about full stack or not full stack (partial stack?) at all. Even if I'm not a full stack developer, I'd expect myself to be able to tell the implications of my choices on the whole system and the final user experience. If a backend developer implements an API that can only return a single item by an ID, and a frontend developer implements a loop to get hundreds of items, each in a single request, are they really doing a good job?

  • @RicardoSilvaTripcall
    @RicardoSilvaTripcall 2 года назад +4

    Long ago, when I started, year 2000, everybody was a full-stack developer, the team was responsible for the whole SDLC and also to support it in production, today, we have come full circle ...

  • @JohannY2
    @JohannY2 2 года назад +4

    I like your breakdown of this. It speaks of a kind of wisdom that is so often lacking in technical circles.

  • @Grouiiiiik
    @Grouiiiiik 2 года назад +3

    I think we could also take this problem by the other end : what would be the title of a web developer that can create an hybrid app / web app, build the database schema, write the server side code, add CD/CI for each parts, help with debugging network etc... depending on the needs of the team / company at the moment ?
    Not everyone has the time / wants / has the mindset to be such a "web generalist developer", with the ability to switch context on a daily basis without losing track of any part of the work.
    To differentiate a software developer that just sticks to back end and db, one that does back + front, and one who can do way more than that (be it devops, blockchain stuff, game dev, firmware dev, AI, graphics, ...) ... what would be the appropriate term(s)?
    Because "software engineer" could fit all of those developers which means we may want to use a more specific word.

  • @gullijons9135
    @gullijons9135 2 года назад +2

    Love this video! I've had a similar view on "fullstack" for a long time but very few seem to be able to step out of the stereotypical "fullstack" image.

  • @tallawahh
    @tallawahh 2 года назад +8

    I think full stack means you can develop an application (cli or GUI) from start to finish, CI/CD and the devOps behind it INCLUDED as well as setting ur DB instance and an API if needs be. Basically you're a one stop shop problem solver

  • @iktrain
    @iktrain 2 года назад +11

    "Full stack developer" was invented by a recruitment agent at the behest of an employer who didnt want to pay more than one person to build their website and wanted someone to be able to work on the full stack that enabled website back in the day; html, js, php, sql etc. Variety is the spice of life so individuals should be able to define whatever they want to be; "full stack" or js developer.. the point is that we are playing a game that recruitment agents have defined not us. Like "technical managers" :D

    • @dinoscheidt
      @dinoscheidt 2 года назад +2

      Wrong. Technical Leads realized that it makes more sense to have a few people work on features vertically than having breaking points in between something fictional we call “frontend” and “backend”. Hence the creation of a role type that is not boxed into a tech layer, working along the stack. So full stack stuck.

    • @superfluidity
      @superfluidity 2 года назад

      Not sure what the complaint is. If one person can do it well enough and without having to endure unreasonable discomfort why shouldn't an employer ask them to do that?

    • @DAG_r8
      @DAG_r8 2 года назад

      @@dinoscheidt well said, he does have a point, reason I am fullstack is cuzI spent most mylife being the only dev.

    • @iktrain
      @iktrain 2 года назад +1

      @@superfluidity a jack of all trades is a master of none

    • @iktrain
      @iktrain 2 года назад +1

      @@dinoscheidt sorry don't agree. As the video suggests what is more effective is full stack teams. I guess you are considering the full stack to be some sort of web application. Never met a super JS developer who is also a master at writing PL/SQL. I agree on delivering features vertically but as a team not as individuals. I guess the project size is biggest factor in this discussion. Mom and dad website can have "full stack developers" all day long and that is perfect for that project.

  • @DAG_r8
    @DAG_r8 2 года назад +2

    I am a swiss knife, the master of none. I am Fullstack. My job is pretty simple to narrow down: it may start with design or directly translating one into a web page (UI), create or transform ideas into functionalities (UX), create data structure (database), handling the data (CRUD), server configurations, last but not least Understanding what is out of scope in a project. There is a difference between knowing a bit of everything and actually doing a bit of everything. Not everyone is fullstack, we all have our strength but mine will never match those of a specialist. Nowadays ppl use Wordpress slap a theme on it configure plugins and call themself fullstack, to each his own I guess. If you are a main dev you are full stack. If you are part of a team of fullstack to me it is like speaking 10 languages but only using one 99% of the time.

  • @swojnowski453
    @swojnowski453 2 года назад +1

    Build your apps. Write apis in PHP connect to a frontend with jQuery and you are done. Full stack dev simplified ;).Have been selling this for 15 years. In 2022 it works as well as it did in 2010.

  • @queenstownswords
    @queenstownswords 2 года назад +4

    Good video Dave. I argue that the term end-to-end-testing has the same problem - 'where does it start and when does it end?'.
    In other words, there are certain industry terms either need to be avoided or need a clear definition.
    IMO, if one or more of these terms are used in a job posting, you need to clearly establish the definition in the role's interview process.

  • @SCMorfildur
    @SCMorfildur 2 года назад

    As someone who calls himself (rightfully or not) a fullstack developer, I define it as: "A fullstack developer is able to do everything required to create and deploy an application, from a blank requirement sheet to the final product on the user's screen."
    A fullstack developer is a developer, engineer, devop and business analyst in one person.
    That means a fullstack developer needs to not just know how to access a database, but also how to install it, create database schemes, indices and such. Whether it's SQL, NoSQL, MS Access or whatever. It doesn't need to be as detailed as a specialist and not all technologies have to be known, but it needs to be a good enough foundation that he can do all of it on his own and understands each step of the process.
    He or she doesn't just need to know how to output things through an API, he also needs to know about creating and designing user interfaces, UX best-practices, image encoding and such. It doesn't need to be a pretty UI, but it needs to be usable enough that someone who can do pretty UIs just needs to style it without having to move things around too much. For web applications, that includes knowing Javascript and Websockets to make the UI interactive.
    The fullstack developer doesn't just need to know how to write and build a program, he also needs to know about how to deploy a program. That includes version control, virtualization, containerization, operating systems and such. Whether it's setting up a docker environment, starting up a tomcat for a Java web application, installing XAMPP or creating a setup.exe for a windows application, the fullstack developer needs to be able to set up the production environment and pipeline on his own. That includes setting up things like Gitlab, Bitbucket or any alternatives.
    For fullstack, you need to know networking, whether it's classic TCP/IP or higher level HTTP, you need to know operating systems to analyze issues, you need to know the tools to delve deep into logfiles, whether they are from the OS, crash dumps from the application or IDS security logs. You need to know about security within the scope of your application, whether it's XSS or SQL injection for web applications, DDoS or timing attacks for networked applications or memory vulnerabilities for local applications.
    Of course not all of it needs to be as in-depth as a specialist and you don't need to know all technologies for all parts, but you need to know enough for every part that you can quickly build upon that knowledge to gain familiarity with new, related technologies and practices. For example, you don't need to know the details of MySQL, Postgres, SQL Server, SQLite and all the other SQL-based DB systems, but you need to know one or two of those enough that you can learn others quickly.
    If there is any part of your project that you can't or won't do on your own, you are not a fullstack developer. You might have your preferences and avoid doing some things (e.g. I don't like doing UI stuff), but you must be able to do all of it if the rest of your team or company got hit by a bus on the same day.

  • @RichieMackay1
    @RichieMackay1 2 года назад +6

    Brilliant Dave and love the Beatles analogy. Having played in bands and worked in development trams I can confirm the creative dynamic is incredibly close.
    Hey everyone, what do you think is the coding equivalent of a jam session?

    • @DobesVandermeer
      @DobesVandermeer 2 года назад

      Hackathon?

    • @moestietabarnak
      @moestietabarnak 2 года назад

      @@DobesVandermeer depend on the definition, maybe Extreme Programming?

  • @PaulSebastianM
    @PaulSebastianM 2 года назад +3

    I'm waiting for Dave's new content like I'm waiting for the hot bread in the oven.

  • @bleki_one
    @bleki_one Год назад

    I like your focus on team being full stack but I'm not sure if I can agree that any person can be a full stack developer this days. I'm mostly working in Java but I'm not afraid to work on any part of the stack. Frontend backend, infra, db. I can even support my family and friends with all their IT problems. Am I full stack? Not at all, even when I have some experience in all of them. It's because of the complexity of all of those stacks.
    20 years ago to build a static website you had to know html and some CSS. Today, when I open a CSS file I feel lost. It became so complex!!! Same as the whole front end stack, when you have not only web but also mobile to cover.

  • @manuelgurrola
    @manuelgurrola 2 года назад +1

    Watching this video and it made me think of my job and the problems me and my team face. How do you tackle Deep systems?
    I am an embedded software developer in the automotive industry. And more specifically I'm involved in the development of Instrument Panel Clusters. For these type of systems you must design and develop software that deals with high-level graphics and low-level drivers alike. My first question is: How do you form Agile teams?
    An Agile (Scrum, really) team (as far as I understand) is a smallish team of 6-9 people, who has all the skills necessary for implementing a set of features in a system. But what if the system is too deep? Imagine a simple function: press a button and show an image; in an embedded system this "simple" function would require to capture the signal through the I/O ports of the MCU (you need to develop a low-level driver); decode the signal (develop the hardware abstraction layer); send the signal, which is now a request, to the corresponding piece of SW (develop services to enqueue, store or trigger events for external requests); identify the request and map it to the corresponding image (develop the application layer); trigger the Graphic services to show the image (this is a whole other job where you need to develop the drivers, abstraction and services for the video RAM, storage like file-system, the display, rendering of images, etc.).
    The obvious answer is to create separate teams for the platform's stacks (the low level stuff) and the application layer (that which uses the platform's services). But now you have separated the functionality and created a dependency between teams. Now you cannot have independent teams that can implement functionality by themselves.
    Now the idea of Sprints... each sprint you will implement a part of the software and ship it. It's like creating a cake slice by slice. But what if the cake is 10 feet tall? Embedded systems are deep systems because you are dealing with many layers of code.
    What will the first User Story look like? When you're starting all you have is a blank Microcontroller. The first User Story musn't involve the user at all because you're still developing the Platform and the User doesn't deal with the Platform!
    How do you tackle User Stories when each user story takes 10,000 lines of code and 2 months to implement? (any functionality from the user POV involves many other functions inside the system) Imagine you're creating a desktop program, but every time you want to draw something on the screen you have to create or tweak and configure (and debug!) the Windows/OS's graphic drivers and services. And maybe the motherboard gives you some problems too because all of the Hardware is being developed and refined at the same time.
    I think the Agile movement has left behind the embedded systems, the deep systems. Are there any recommendations? I which more guru developers would talk about embedded. Developer has become a synonym with Web Developer, remember there are other areas of development as well.
    Off the top of my head here are some layers in our architecture: Low-level Drivers (e.g. memory driver, communication driver, I/O drivers, MCU drivers), Hardware Abstraction (Non-Volatile memory emulation, communication protocols like CAN, LIN, SPI, I2C; cryptographic interfaces), Services (system states, diagnostics, communication services, etc.), Application Logic (the actual functionality); I'm just naming parts of the AUTOSAR architecture, and this is not counting that in Instrument Panel Clusters you also have to deal with the Graphics part (one of the few ECUs in a car that have User Experience worries).

    • @ContinuousDelivery
      @ContinuousDelivery  2 года назад +1

      You break them up, but you break them up to be testable and de-coupled. The anti-pattern is to force them to only change in lock-step across all the layers. So it takes a combination of good design and a focus on testability and deployability to get all this right. Also the use of techniques for decoupling.
      The trap that I see teams building tech like yours fall into is to forget that the content, the data that is communicated between layers, through those ports that you mention, is the interface too. You need to translate at these point in order to insulate them from change, and decouple them developmentally. There is more to this than I can put into a YT comment, but I think these are the principles.
      Just for reference, SpaceX and Tesla are TDD and CD practitioners, their code stacks are pretty deep too.
      I am not saying Full Stack means that you everyone MUST know everything, but they must have a model of nearly everything to understand where and how their stuff fits, and the implications of changing things at whatever layer you are working at.

  • @nmilutinovic
    @nmilutinovic 2 года назад +4

    This reminds of what my boss told me more than once: "DevOps is not a person in a team. It is a feature of the team."

  • @kathringluck5820
    @kathringluck5820 2 года назад

    Thanks for your videos! I've been watching a lot of them and they're really helpful! My boss is still not convinced and it comes down to one question you don't seem to have covered, yet: How do we get paid?
    With an agile approach, how do I determine beforehand how much our software will cost? My answer would be that we shouldn't have to. Our customer should pay new development by the hour. Meetings included. My boss seems to think that we wouldn't have any customers if we cannot put a price tag on the software for the management to approve of the spending. Again, my answer would be that we can put a price tag on EXISTING software, making an informed guess how much time we need for configuration, but let them pay NEW development by the hour. I can't see why this shouldn't be possible.
    How do you determine prices for software projects?

  • @jsbc003
    @jsbc003 2 года назад +2

    how does the role of a "software architect" fit in this discussion?

    • @ContinuousDelivery
      @ContinuousDelivery  2 года назад +1

      I talk about that here: ruclips.net/video/ElMnHDSFaCw/видео.html

  • @alessiobreviglieri4154
    @alessiobreviglieri4154 2 года назад +1

    I would love to work in a team with this guy.

  • @jimhumelsine9187
    @jimhumelsine9187 2 года назад

    I love The Beatles analogy, but I think there are more nuances than just the members of the band. They were influenced by rock and blues musicians that came before them. I feel like this is how we learn from those who came before us including Dijkstra, Knuth, Fowler, you and others. The Beatles also didn't build their own instruments, but they chose them. I feel this is like us choosing our programming languages and frameworks. Finally, The Beatles had recording technicians making sure that the recording technology was working. While the band was definitely involved in the final mixing, they still depended upon the technical experts. I'm not sure the software equivalent for this, but maybe it's QA or Ops.

  • @rahmanjahdasa212
    @rahmanjahdasa212 2 года назад +1

    Thanks Dave, top-notch person, what do you think about the difference between cross-functional teams and full-stack teams?

  • @Zeero3846
    @Zeero3846 2 года назад +2

    I probably do qualify as full stack even though I would never use the term myself, not because it's unclear, but because it's not how I judge competency. I judge by how quickly one can pick up the design and architecture of an application from any of the following: the UI, the source directory structure, the application directory structure (if it exists), the data schema, and how users and fellow team members talk. You can never be fully trained in any of these areas, but as I imagine it, a skilled developer is always thinking about how to write the application completely by scratch by himself. The existing code just happens to be a useful library (hopefully) to help you write it.

  • @konstanti
    @konstanti 2 года назад +5

    I think that even fullstack means that you're better in some part than the other. It's like being bilingual - you won't be as good as you could have been if you were speaking only one language.

    • @PabloEzequielLeone
      @PabloEzequielLeone 2 года назад

      I agree, however, I think understanding the principles would give enough confidence to work both sides. I’ve been a Frontend architect and I’m now a backend architect. There are differences, but just in concepts!

    • @moestietabarnak
      @moestietabarnak 2 года назад

      it's relative, knowing more language can make you better in your native language by contrasting to other, even though you are not as fluent in the other language..
      In software that could mean you write more efficient code in high-level language because you know assembly and compiler as you know what the high-level instruction mean when translated to machine ..

  • @coderider3022
    @coderider3022 2 года назад +1

    Devs good at react but knows mongo and able to deploy a secure app on beanstalk or app service using private links front door etc etc are hard to find. Better getting front end and backend collaborating in small agile team.

  • @AndrewLatham
    @AndrewLatham 2 года назад +1

    I just want that shirt. Love the content, keep it coming!

  • @dindoleonard
    @dindoleonard 2 года назад

    Your the best Dave, one of my programming heroes.

  • @futuremoe
    @futuremoe 2 года назад +5

    I'm more bothered by the word DevOps being used as a synonym for operations

    • @ContinuousDelivery
      @ContinuousDelivery  2 года назад +1

      I think that you want this video then: ruclips.net/video/1Mcpir3Frtw/видео.html 😉

  • @Anne-cv4ms
    @Anne-cv4ms 2 года назад

    Thank you very much sir, it was very insightful and I finally found out what kind of dev team member I am :)

  • @agcwall
    @agcwall 2 года назад

    I don't think it's useful to redefine terms and engage in sophistry. I'm not sure if you're trying to poke fun of people who call themselves "full-stack", it seems like it. Anyway, at the end you nailed it: thinking about the entire system is what separates good developers from bad ones, but I don't think that's how people would distinguish between "full-stack", "front-end", or "back-end". The term "full-stack" is well understood to mean people who can code both front-end and back-end. The distinction is whether or not it runs in the browser. It's a bit of an artificial distinction as applied to people, because usually, a good developer will be quite capable of doing either front-end or back-end, while a worse developer may have trouble broadening their attention and skills. A full-stack developer is not one who merely "writes javascript on the front-end and back-end". To be competent at writing back-end code implies that you understand concurrency, as well as for performance impacts and system-wide impacts of your coding and deployment choices. It usually means an understanding of many languages, and a breadth of experience.

  • @pm71241
    @pm71241 2 года назад +1

    I have a hard time these days seeing how you can get time to follow the trends in a wide enough spectrum of technology to be good at everything.
    I think I've only met one guy in my career who I trusted to know what he talked about is so wide a spectrum that I would call him "full stack"

  • @jrgalyen
    @jrgalyen 2 года назад

    Full slice is a much better term. When you cut through a multi-layer cake, you don’t often slice through the plate. Or the table. Or the floor holding the table.
    And if you only like chocolate, there is nothing wrong with handing the vanilla and strawberry layers to others. But it is the presentation of the slice that makes you a full slice developer.
    At least this is how it was explained to me 10+ years ago

  • @PaulSebastianM
    @PaulSebastianM Год назад

    Isn't specialization the same as decomposition, though?

  • @matthewtrow5698
    @matthewtrow5698 2 года назад +11

    "How to be a Full Stack Developer in 2022" - I'd say an anxiety ridden individual who feels they can't specialise, because of modern demands that developers should "know everything".
    There are indeed some very talented and amazing individuals who can truly embrace the idea of "full stack" and indeed the idea of a "devops principal engineer", but for us mere mortals, the idea of being able to embrace and perfect what it means to be "full stack", is impossible. I have yet to meet anyone, really, who can truly embrace multiple disciplines.
    You may know "enough" about multiple aspects of development, but it does mean, at best, you end up as "jack of all trades, master of none."
    You will fall foul of your lack of knowledge in any specific discipline, as soon as you tread off the beaten path - usually when there's nothing you can copy and modify.
    It's a buzz word, as is "devops engineer" - we are all still specialists. (apart from those super heroes).
    I've ditched the anxiety now, focussing on my core skills and leaning on others for those skills I have little interest in.
    The truth is, if you are a specialist in any given subject that is in demand and you are GOOD at it, you can "fake" the rest of it, or at least, have enough knowledge to scrape on by ... OR you rely on teamwork.
    Sadly, the demands placed upon developers now, when seeking new roles, are ridiculous, so you have no choice but to at least attempt to "fake" or "stretch the truth".
    However, the key aspect for any developer should be "can you solve problems".
    The best job interview I ever had - and it was at the company I now work for - had multiple stages of interview process.
    Two of them were entirely geared toward asking me to solve problems.
    One was a simple numbers based coding task - and pseudo code was totally fine. It was to write on paper, how to pick 6 random numbers from a set of numbers, without repetition. The other was a task to explain the process of creating an application at a high level - to quickly sketch out a path to follow, not in terms of code, but in terms of application flow.
    They wanted to see if I could problem solve and really didn't care about whether I could code in any specific language, or answer silly memory based questions that the vast majority of programmers have to constantly look up.

    • @DAG_r8
      @DAG_r8 2 года назад

      I agree with most of what you said, I am a swiss knife, I will never match a chainsaw. To match a specialist in skills is not needed most of the time. Not all project need to be scalable nor do they require 20 line sql queries, sorting the data thru a loop later instead is not being a fraud, it is being a fullstack and making it work, I am the master of none, learning and solving is what I specialize in. I am fullstack :)

    • @dlroWolleH
      @dlroWolleH 2 года назад

      👏

    • @axelneumann8443
      @axelneumann8443 2 года назад

      You are absolutely right. I am interested in basically everything so I am full-stack but master of nothing. I work hard to never leave the trodden path for each tech. There are all kinds of trouble if you do that

    • @victorlongon
      @victorlongon 2 года назад

      I couldn't agree more. I always cringe when I hear "I am full stack developer". There are certainly Jordans and Messis in the world BUT there are very very few.

  • @MisFakapek
    @MisFakapek 2 года назад +14

    These days "Full-stack" means Front-end developer that is able to build front-end APIs for his/her webapps. It's a pretty handy simplification, as web development went fully bonkers in the last 10 years.

    • @archmad
      @archmad 2 года назад +1

      our company use full-stack to do everything software dev related. regardless of frontend, backend, devops, etc. I don't like it so i firmly said to the company, nope, i only do frontend.

  • @pleasestop1760
    @pleasestop1760 2 года назад

    Hello,Thank you for sharing, any book suggestions on communication skills?

    • @ContinuousDelivery
      @ContinuousDelivery  2 года назад +1

      Sorry no, not my kind of book really.
      Personally I think that reading in general helps, and practicing communication - sounds silly, but write, take chances to present to people, join in conversations and debates. Funnily enough, pair programming helps, you talk to your pair!

  • @Ackrozinski
    @Ackrozinski 2 года назад

    Great video, and great insight!

  • @StreetsOfBoston
    @StreetsOfBoston Год назад

    @ContinuousDelivery
    Again, a great video. I agree with most of it.
    Bu the analogy of "one person playing the white keys, the other playing the black keys" on the piano is not a great analogy.
    It is more like one person plays the keyboard, the other person plays the drums and yet another plays the guitar.
    And the musicians didn't build their instruments. They bought them.
    Wait! That regularly happens in bands, doesn't it? :)
    While cross-training is always a good idea, letting people shine in their speciality is also a good thing. Too often, it gets maligned because of its scalability issue.

  • @orlovskyconsultinggbr2849
    @orlovskyconsultinggbr2849 2 года назад

    this days i care only that client understand the value proposition, software is means to generate value. Sure quality of software should be as high as possible.

  • @jrgalyen
    @jrgalyen 2 года назад

    I am going to bring an arduino with me for the next time someone asks if I am full stack developer. Then throw it in a cup of water. And claim I changed the functionality of the transistors. “Oh, look. It floats. It didn’t do that before. I did that. I changed how the hardware works”

  • @ReadersOfTheApocalypse
    @ReadersOfTheApocalypse 2 года назад

    Is it full-stack if I run a web site on a 5$ ESP32 microcontroller, interactively displaying sensor data via integrated WiFi? 🤪

  • @TheCameltotem
    @TheCameltotem 2 года назад

    I do fullstack work but who is really a fullstack dev?

  • @MobiusCoin
    @MobiusCoin 2 года назад +1

    We used to call Full Stack Developers Webmasters.

  • @typingturtle5155
    @typingturtle5155 2 года назад

    I saw that "java-script" reference ;)

  • @MrEvansjethro
    @MrEvansjethro 2 года назад

    Wisdom.

  • @dlabor1965
    @dlabor1965 2 года назад

    Full Stack Dave!

  • @TheCameltotem
    @TheCameltotem 2 года назад

    Also I don't get your argument about "where does fullstack start and end" you could literally make the same argument for frontend and backend.
    Oh you're a backend dev? How deep does backend go?
    Like you know context matters. So when a web developer talks about fullstack you surely know what they are talking about.

  • @m1dway
    @m1dway 2 года назад

    I guess that's more of a definition for full stack engineer

  • @jamesgg9950
    @jamesgg9950 2 года назад

    If anyone is a full stack developer, it isn't because they wanted to be.
    If anyone wants to be recognized as a full stack developer, they probably shouldn't.

  • @WeyYangTan
    @WeyYangTan 2 года назад +1

    sound like a full stack developer is equivalent to a application architect

  • @Eduard.Popa.
    @Eduard.Popa. 2 года назад

    Full stack developers is a need of cheap software in a world where so many new technologies, languages, libraries, tools, versions arrives every year.

  • @guywicks8967
    @guywicks8967 2 года назад

    Thumbs up for the Tee-shirt!

  • @EnriqueRegisPascalinRomo
    @EnriqueRegisPascalinRomo 2 года назад +1

    Sorry guys, but self called "full stack developers" are MOST (but not all) OF THE TIMES juniors in both FE and BE or FE developers that learned some server side scripting or BE developers that learned some Javascript for UIs. But companies most of the times need BE developers that are senior and closer to DevOps (than to FE) and Front End developers that are senior and closer to UX / UI engineers.
    My honest opinion is that architects and very senior engineers would never describe themselves as "Fullstack developers". This is a trend for greedy recruiters and stingy companies to pay two profiles on a single individual.

  • @adambickford8720
    @adambickford8720 2 года назад

    I can solve your business problem no matter what it is. I'll copy/paste all of stack overflow if I have to!

  • @JukkaPihl
    @JukkaPihl 2 года назад

    In my mind "Full Stack" is usually "Funnel Stack". Mostly UI programming, Mostly everything in JavaScript. Little server side (in node.js) and real backend things, like database, are somebody else (usually cloud service providers) problem.

  • @cccc2740
    @cccc2740 2 года назад

    why are full-stack developers described as back-end developer who also does frontend development...why cant it be opposite, like a frontend developer who also does backend development...smells like a bias against frontend developers

  • @_RMSG_
    @_RMSG_ 2 года назад

    Hardest working man, looks like he's never slept in his life

  • @melphiss
    @melphiss 2 года назад +4

    Full stack is the application of the principle “The more I know, the less I understand”

  • @amitev
    @amitev 2 года назад +2

    Full stack developer is a person who adds technical debt to each layer of the software.

    • @EdubSi
      @EdubSi 2 года назад +2

      Bad take - especially after such a good video explaining it's not about the layers you are going through.

    • @PavelHenkin
      @PavelHenkin 2 года назад +2

      Lol I like it.. that kind of 'take' is called a joke

  • @regulus8518
    @regulus8518 2 года назад

    dogshit frontend, dogshit backend, dogshit architecture and dogshit user experience ..... full stack of of what exactly ?

  • @mocococo2877
    @mocococo2877 2 года назад

    Purely philosophical monolog not worth the time to watch. The exact meaning depends on how many people you ask. If you ask 200 people you will have 200 definitions, etc. You may even have more definitions if you ask in different days.