What All New Software Developers Need To Know

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 พ.ย. 2020
  • I asked a bunch of industry-leaders and experienced software developers for their career advice for junior software developers. I got hundreds of responses. This video collates that advice and adds some of my own. So if you are just getting started, or about to begin, in your career as a software developer, here is some really valuable advice from industry experts, leaders in the field, as well as some of the people that will be hiring you, and probably managing and teaching you when you start out. I hope that you find it interesting, helpful maybe even inspiring in places.
    New software developers, just starting out, often focus on the wrong things. It is easy to get lured into the technicalities of language, frameworks and tools. After all, that is where we spend most of our time: but that is not what we do.
    I have been lucky in my career to work on some fantastic teams, with great people. Amongst my proudest achievements though has been in helping to coach and improve some software developers who were just starting out in their careers and in helping them to become world-class in their field.
    -------------------------------------------------------------------------------------
    Dave Farley is a well-known expert in the field of Continuous Delivery, DevOps and Software Engineering in general. He has led successful, world-class development teams and helped many people grow their careers in software development. He is also quite opinionated!
    📚 BOOKS:
    📖 Dave’s NEW BOOK "Modern Software Engineering" is now available on
    Kindle ➡️ 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-pipelines
    📖 The original award-winning "Continuous Delivery" book by Dave Farley and Jez Humble
    ➡️ amzn.to/2WxRYmx
    ---------------------------------------------------------------------------------------
    Also from Dave:
    🎓 CD TRAINING COURSES
    If you want to learn Continuous Delivery and DevOps skills, check out Dave Farley's courses
    ➡️ bit.ly/DFTraining
    For a FREE guide to Pair Programming, sign up to the CD Mail List for the latest discussions, regular free "How To..." guides, and updates about events and online courses. Follow this link for the details ➡️ www.subscribepage.com/cd-pair...
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 463

  • @feyzullahsari9321
    @feyzullahsari9321 3 ปีที่แล้ว +175

    “Everybody is junior at something “
    Very nice...

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +8

      Thanks, it was one of the most common responses that I got from others, as well as something that I believe in myself.

    • @awesomeebomah8519
      @awesomeebomah8519 3 ปีที่แล้ว +2

      Great tips in this video. Finally found someone that likes Tintin @feyzullah

    • @vaibhavbv3409
      @vaibhavbv3409 3 ปีที่แล้ว

      correction -> every homo sapien is junior at something.

  • @rkd-me
    @rkd-me 3 ปีที่แล้ว +114

    This might be the first video i saw that doesnt talk about coding, but the actual things programmer need, great video!

  • @vjzb3
    @vjzb3 3 ปีที่แล้ว +78

    As a dev who has just 2 years of professional experience, and has lacked access to mentorship, this information is incredibly valuable. I can see many examples from my past two years where I have succeeded or failed in applying the principles outlined in this video, and I now have the expanded awareness to be more intentional about these things in the future. Thank you

  • @StaffanJohansson1
    @StaffanJohansson1 ปีที่แล้ว +27

    It took me about 5 or 6 years as programmer to realize most of these things, so I think this video is not only for "new" developers. Great summary of what our profession is all about.

  • @sarahgraves6759
    @sarahgraves6759 3 ปีที่แล้ว +61

    As someone whose not a professional developer (hardly a hobbyist) I came just to say I love your shirt.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +9

      I have a small collection of silly Sci-Fi shirts, check out tonight's video for another :)

    • @brianhood932
      @brianhood932 3 ปีที่แล้ว +3

      That shirt is why I clicked...

    • @---el6pq
      @---el6pq 3 ปีที่แล้ว

      I have this shirt!

  • @codestuff782
    @codestuff782 2 ปีที่แล้ว +5

    This was insanely insightful. TH-cam needs more like this content. I subscribed immediately. It is easy to learn frameworks and etc. but hard to learn how to think about general structure, road and patterns. Thanks a lot.

  • @enjonpodrimaj1011
    @enjonpodrimaj1011 2 ปีที่แล้ว +4

    Hey David, just wanted to say, that after my two years of working on software development, I know at least enough to value all these tips and carry them onto my career. Thank you very much!

  • @niklot5046
    @niklot5046 ปีที่แล้ว +4

    Trying to transition from QA to development in gamedev, I started learning how to code very recently.
    Looking through all the job requirements for Gameplay Programmers etc seems so daunting I started to doubt if I have enough lifetime to master all those skills and technologies.
    This video gave me lots of hope and further fueled my drive to push forward and learn.
    Thank you!

  • @EnVideoZone
    @EnVideoZone 3 ปีที่แล้ว +1

    Amazing clarity; advice that you can feel. Every now and then you shine a light on something we got right and the sweet bells chime. So rich and most comprehensive. I am most grateful for this.

  • @PhilAtCanada
    @PhilAtCanada 3 ปีที่แล้ว +1

    These are very very helpful. Just watched probably 5 of your videos over the last couple of days. In the fast paced world of software development being reminded of grounding principles and what actually matters is an important reminder. Best videos about programming and higher level concepts I could find on TH-cam.

  • @missusfinz
    @missusfinz 4 หลายเดือนก่อน

    I love your knowledge and humility. It is refreshing to find a TH-cam channel that really looks at the fundamentals. Thank you

  • @vgonzenbach
    @vgonzenbach 7 หลายเดือนก่อน

    I'm just starting out my software development journey and you have turned my mindset on its head. Thank you sir! Please keep posting quality content!

  • @anthonygibson3709
    @anthonygibson3709 ปีที่แล้ว

    First time seeing a video from you, thank you for this. Starting my first dev job in 2 weeks.

  • @khps9176
    @khps9176 3 ปีที่แล้ว +13

    The first advice i would agrue is one of the most important once. The thing i've found is that the more i learn, the more i realize that i got no idea what i am doing.

  • @mdegginger4761
    @mdegginger4761 3 ปีที่แล้ว +1

    Thank You for taking the time to set up a beginning roadmap for Jr. Developers. Talking to us about what is actually important , and what to strive for certainly will eliminate a few bumps and bruise along the way. This discussion already has changed the way I approach my job, and lead me to subscribe immediately. Great Job.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว

      Thank you, in case you missed it, this weeks video is also aimed specifically at more junior devs too. th-cam.com/video/5g3dK2DgW-k/w-d-xo.html

  • @magenertech9412
    @magenertech9412 2 ปีที่แล้ว +2

    I've had 6 years of non professional experience and this video was the most eye opening I've ever watched on TH-cam. Thank you for that.

  • @tleanvasner6866
    @tleanvasner6866 2 ปีที่แล้ว +2

    I've seen a bunch of videos with advices for new software developers and none of the speakers to my mind were so enthusiastic about the job in the IT. It was so nice of you to greet us with such warmth at the beginning of the video! It IS very inspiring when you finally see a person who is still able to enjoy the work despite the decades of experience.
    Thank you :)

  • @l_combo
    @l_combo 3 ปีที่แล้ว +1

    Another fantastic T-shirt ;) this advice doesn't just apply to developers either - very useful! Some other great advice in the updated version of the Pragmatic Programmer book too.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว

      Just the "Cyberdyne Systems" one left in the SciFi T-shirt series🤣 😎

  • @banatibor83
    @banatibor83 ปีที่แล้ว +5

    As a software developer with almost 10 years of experience under my belt I am glad I found this video. It reinforced me that I am doing it right :)
    To junior devs, I would say focus on TDD and clean code first, make those a habit, get to know your tools and the language you are working with, then you can and should dive into higher topics like what were addressed in this fantastic video!

  • @elanrider
    @elanrider 2 ปีที่แล้ว

    Dave, it's great to see the background of your room. I really enjoy the content of the channel and your personal approach to deliver it. Now I learned that we have things in common other than software development by looking at things surrounding your workplace. I love model airplanes, ZX Spectrum was my first computer back in 90s, and I enjoy Guinness too))) Thank you.

  • @akinbodejoshua748
    @akinbodejoshua748 ปีที่แล้ว +1

    I was overwhelmed by the information I got from this video, thank you so much.

  • @mishalzeera8172
    @mishalzeera8172 3 ปีที่แล้ว +1

    Thank you, that was helpful. Im just getting into software/coding in my 40s, and am really enjoying it. I hope you still have that Sinclair somewhere. Im from the Commodore 64/Amiga generation, but the Sinclair systems were kind of legendary by then. Be well!

  • @mr.dingleberry4882
    @mr.dingleberry4882 ปีที่แล้ว +14

    This is criminally underrated. I've written down everything you said to make sure that I never fall under the impression that I've somehow "outgrown" these concepts set by veterans such as yourself. If you stress that something is important, I'd rather blindly trust you than experience the repercussions for thinking that I know better (Dunning-Kruger Effect). Thank you.

    • @ContinuousDelivery
      @ContinuousDelivery  ปีที่แล้ว

      Wow! Thank you - I hope you continue to find my stuff helpful.

    • @ilanouk
      @ilanouk 2 หลายเดือนก่อน

      It's a false dichotomy you shouldn't either blindly trust or ignore advices. You should understand all advices, tools, tips and rules are valid in a certain context and not in general. Understanding the context will make you understand why you often should not follow certain advices for your specific case.

  • @rodvicj9896
    @rodvicj9896 3 ปีที่แล้ว +2

    Have to rewatched this, thats a mouthful of great advice. Thanks

  • @ejokeregaming
    @ejokeregaming 3 ปีที่แล้ว +38

    This is a great breakdown on the industry. Unfortunately, those doing the recruitment for many organisations, don't understand most of these points. Once you have a role all of this advice is spot on. Great job.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +13

      Thanks, I think that recruitment is a difficult job, but often poorly done. It is understandable that people too often take the "skills checklist" approach, because, though much worse, it is easier to do. I spent a fair bit of time in trying to recruit developers to a couple of organisations that I worked in, it is a difficult thing to do well, but it seems to me important enough to spend time on and to try to do well. I got to the stage where I didn't read CVs before an interview, because they were so targeted at lists of skills rather than the stuff that I was interested in.

    • @Nurof3n_
      @Nurof3n_ 2 ปีที่แล้ว +1

      @@ContinuousDelivery what were you interested in?

    • @ContinuousDelivery
      @ContinuousDelivery  2 ปีที่แล้ว +1

      @@Nurof3n_ I talk about some of that stuff in this video: th-cam.com/video/osnOY5zgdMI/w-d-xo.html

  • @darknesstwi
    @darknesstwi ปีที่แล้ว +2

    Honestly, the information in this video is invaluable. As a junior in college, I couldn’t have found this video at a better time. I’ve already started creating some of the crazy ideas I have in my head and this video helped me realize some of the weak methodologies I was carrying out. I also loved the tidbit about watching someone use your product. I never considered the importance of observing the interactions between your product and outside interfaces. Cheers!

  • @scottisitt
    @scottisitt 3 ปีที่แล้ว +2

    Great information! Really appreciate you sharing this.

  • @andreasfrom582
    @andreasfrom582 3 ปีที่แล้ว +2

    These pieces of advice would have been handy when I started out... It really would have made a world of difference!

  • @user-ox2zd6hi4s
    @user-ox2zd6hi4s 11 หลายเดือนก่อน

    I found this all very valuable even though I'm a software tester who only does programming for test automation and as a hobby on the side. Your channel as a whole is quite excellent. It surprises me that your subscriber numbers are not higher.

  • @Aymand1982
    @Aymand1982 3 ปีที่แล้ว +2

    Great video, enjoyed it a lot. You describe separation of concerns and coupling in a very clear way, especially for someone like me who is still learning software development.

  • @alejandrocosta2756
    @alejandrocosta2756 ปีที่แล้ว +1

    Your channel is among the best things I've came across in the last couple of months, within this magnificent universe of software development. Thanks a lot for this great work! ✌️✌️✌️

  • @TokyoXtreme
    @TokyoXtreme 3 ปีที่แล้ว +22

    I feel like I’ve become a senior engineer just by listening to this video. I’m going to make SRS flashcards of all the things that aren’t already burned into my mind.

  • @VDMpeniel
    @VDMpeniel 2 ปีที่แล้ว

    Amazing video! It will take me watching this a few times before I can absorb all that info. Thank you so much.

  • @Chirku
    @Chirku 11 หลายเดือนก่อน

    Thank you for making this video! This is what I was looking for.

  • @alexebarlescu9502
    @alexebarlescu9502 2 ปีที่แล้ว

    The best piece of advice ever for beginers who looking to self teach, who maybe learned frameworks before they even ever known the meaning of the fundamentals explainded in this video. Thanks

  • @curiosdevcookie
    @curiosdevcookie 3 ปีที่แล้ว +2

    That content was awesome - thank you.
    The reasoning of every advice was clear, the attitude is that of a true mentor‘s heart, and the whole setting felt no-nonsense, focused reassuring and inviting. As kind of a personal bonus, I like listening to your voice and enjoy watching you explain things.
    So, a big thank you from an aspiring developer from far away Germany, who once was apprenticed to a carpenter (no joke), who then studied History on her way to a PhD (translating Ancient Greek and Latin), who then lost everything, … who finally has discovered that strange, beautiful, nerdy dev land and feels very much at home there.
    It‘s the best of all worlds, where I can concurrently explore, built, be creative, and do science 🙃

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว

      Thank you. I’m glad you enjoyed the video and found it helpful!

    • @Juzzyjuzzy
      @Juzzyjuzzy 11 หลายเดือนก่อน

      That’s a good one! My story is a bit similar. Studied marketing, and for an MBA, but discovered myself to love this field.

  • @caioporta5060
    @caioporta5060 3 ปีที่แล้ว

    Hi from Brazil. I worked in France last year. I applied the "pair programming" and I didn't even knew there were a name for it. It worked pretty well. I liked so much when you explained the difference between a good and a bad programmer. I'll try to improve things like that in the future. Also letting people to use my software was not at all what I expected and I had to do some changes because it seemed to be not that obvious for them. Thanks for sharing with the world your knowledge. Have a nice 2021!

  • @induction7895
    @induction7895 3 ปีที่แล้ว

    Thank you for the advices. I feel very fortunate to learn from someone as experienced as you.

  • @polizovski
    @polizovski 2 ปีที่แล้ว

    Excellent insight, great advice what needs to be in focus. Thank you for sharing.

  • @kibirigejohn8324
    @kibirigejohn8324 ปีที่แล้ว

    Thank you so much Mr. Farleyfor this video, it was really helpful

  • @sebwylleman
    @sebwylleman ปีที่แล้ว

    This is so valuable, thank you for sharing Dave!

  • @booqueworme
    @booqueworme 3 ปีที่แล้ว

    Great advice collection.
    And independent of the language or developers level.
    In Russia and some other ex-USSR countries there is a popular domain-specific framework called 1C with its own language used to automate trade, accounting, warehousing and other business domains.
    I'm not an expert at it but I clearly see all the problems described by you that even "senior" 1C-developers bring into their clients' code base even though the framework itself nudges the developers to learn the business domain and be good at it to some extent.
    I watch some other TH-cam channels on programming in Russian and English and I must say that your adviсe are much more profound and resonating with practice than almost everything I've seen here on TH-cam before.
    Thank you very much sir for your wisdom and advice!

  • @dlcfrsu6940
    @dlcfrsu6940 3 ปีที่แล้ว +1

    Awesome content for Developers of different levels. Thanks for sharing

  • @henryecoleman
    @henryecoleman 3 ปีที่แล้ว +5

    Very cool and humbling video. Demystifying, inspiring and deeply insightful.
    Happy Healthy New Year!

  • @user-jt4hw8jf5x
    @user-jt4hw8jf5x 9 หลายเดือนก่อน

    This video really helped me a lot in my beginning. Literally every piece of advice was extremely useful for me. Much appreciated 👍

    • @ContinuousDelivery
      @ContinuousDelivery  9 หลายเดือนก่อน

      Thanks, I am very happy that you found it helpful.

  • @Arzildeppo
    @Arzildeppo 2 ปีที่แล้ว

    Love that you kept the original ZX Spectrum box! I recently discovered your channel and have been quite enjoying it so far, and today I was curious to hear what you were going to recommend to juniors. The Spectrum 48K was my very first "real" computer, got it in 1983 and learned Z80 assembly, BASIC, Pascal and C on it, shortly before starting my career on IBM PCs. Sweet times. We must be in the same age group, and I wonder now if you began on that too. I still have mine in the basement... but no original box :/

    • @ContinuousDelivery
      @ContinuousDelivery  2 ปีที่แล้ว

      I played a little with a ZX81 before the Spectrum. But I mostly learned the basics of programming on the Spectrum. The box in the pictures has a Spectrum in it, not my original one, a a gift from my wife, who also organised my family to chip-in and buy my my original one 😁😎

  • @xavierm1018
    @xavierm1018 3 ปีที่แล้ว

    Sometimes we need to re-phase ourselves. This is nice video to watch, doesn't matter how long you are working on programming.

  • @jeehill9592
    @jeehill9592 3 ปีที่แล้ว +8

    Hey I am restarting my life (have been for the last 7 years) and I recently got a degree in Software Development focused Computer Information Systems. I am finally in a position to break into the industry (hopefully) after overcoming some obstacles that disallowed me to go for tech jobs and I really appreciate this video. I aim to become a software dev and work on a team challenging myself and growing. Keep this stuff coming I enjoy learning more about how to be more successful in this field.

  • @ZIeLoPeNation
    @ZIeLoPeNation ปีที่แล้ว

    The very beginning really triggered something In me to keep going. Glad to hear from an older perspective.

  • @michaelhughes8413
    @michaelhughes8413 ปีที่แล้ว

    I really enjoy listening to your videos, so thank you! Great advice, and free!!

  • @manni.Net60
    @manni.Net60 2 ปีที่แล้ว +3

    As a Developer withone year of professional Experience it is very obvious, that you actually have a Deep understanding of our field and can communicate your learnings well. Thank you and keep it up

  • @dheerajkrishna2647
    @dheerajkrishna2647 ปีที่แล้ว

    Thank you very much for your valuable input for software developers.

  • @-Tholos-
    @-Tholos- ปีที่แล้ว +1

    This is good advice. Wish I had this when I started out.

  • @TheZethera
    @TheZethera 3 ปีที่แล้ว +81

    I remember someone saying: When starting a new project do the hard part first, that way you'll find out early if your project is even viable.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +63

      I would slightly change that approach. When I am presented with a problem, my first thought is "is a solution possible?". At that point, my approach is to try and think of any way in which you could solve this with software. If I can think of one, no matter how horrible or complicated my initial idea is, then I am comfortable that it is possible - and all I have to do is find a nice, or better, solution.
      I don't usually want to describe this first version to anyone, because the solution is usually nasty.
      I am pretty experienced, and so I am pretty confident that if I can imagine a solution, I can build one too. I am also VERY confident that I can start without knowing all of the answers. So for regular things, I am happy to start very quickly.
      At that point, I want to start, not with the most complex stuff, but with the most valuable stuff. Ideally, I'd like to create something useful and get it out to people to see how they react.
      If the problem has some aspect that I have no idea how to do it, or imposes (for example) performance constraints that I don't know if they are possible, I will do some experiments - These are consciously throw-away, in terms of code. Don't confuse learning if something is feasible, with building something that is production ready. If you try to do both at the same time, you will do a worse job of both. Best to try and think of the simplest experiment that can show you the way forward, and do that.

    • @michaelnurse9089
      @michaelnurse9089 2 ปีที่แล้ว +2

      The issue with this is that it assumes you know what the hard part is which assumes you have deep knowledge of the problem domain. In the real World, you write what you THINK is the hard part first, then tell the boss it is all going to be done on budget. A month later you discover the REAL hard part and you are up a creek without a paddle.

    • @lesterliston4692
      @lesterliston4692 4 หลายเดือนก่อน

      But Sr do it as easy as possible and didn’t even concern to the other end of integration which is adjusting their code to accommodate the easy way of the Leader/Sr.

  • @benjaminferland4251
    @benjaminferland4251 10 หลายเดือนก่อน

    Great content, thanks for posting!

  • @Kraja111
    @Kraja111 3 ปีที่แล้ว +1

    Thank you :) you are definitly helping me.

  • @shengzhuang2795
    @shengzhuang2795 3 ปีที่แล้ว +1

    Thank you very much, this is exactly what I need right now

  • @xBaphometHx
    @xBaphometHx 3 ปีที่แล้ว +1

    I love your advices. They are understandable and very useful. I hope you get a lot more viewers.

  • @cantand2817
    @cantand2817 3 ปีที่แล้ว +1

    Thank you. Just wanted to show my respects for the years in the industry. I've started 10 years ago and still learning better ways of solving situations I encounter daily (problems are only in math and they allways have at least 2 solutions) . For juniors and starters I would suggest to start with the basic principles of programming, OOP concepts and then play with multiple languages to get to know which are the tools you could use to solve situations :) best of luck to all

  • @joaosalomao215
    @joaosalomao215 2 ปีที่แล้ว

    Awesome video, thank you so much!

  • @nicolaslupo5021
    @nicolaslupo5021 2 ปีที่แล้ว

    Great video! Thanks very much for this valuable info!

  • @blessank09
    @blessank09 3 ปีที่แล้ว +6

    Thank you for sharing, it was very helpful!

  • @BonelezzK
    @BonelezzK 3 ปีที่แล้ว +11

    Quality content, we need more... Спасибо Вам)

  • @bachristus
    @bachristus 3 ปีที่แล้ว +1

    Thank you! As always great thoughts and wisdom

  • @offilawNoone
    @offilawNoone ปีที่แล้ว +4

    Very useful stuff. After I got my second higher education three years ago, I did programming all alone and, probably, this is an excuse, I didn’t have time to learn how to do it right, because I immediately needed to complete commercial tasks quickly, in languages and with the help of tools which I have just learned to use. We all know that formal computer science education does not provide programming skills in specific languages and development environments. In such an environment, and even I would say bubble, I worked for about three years. But then the war happened. A few months after that, I was gathering my thoughts about how to live on, and as a result, a few months ago I left my country, leaving almost everything behind. Grabbing two bags with things and a backpack with laptops, I crossed the border of my country on foot. Now, in order to be able to work remotely in a normal company, competing with good programmers, I need to increase my level by several steps at once, otherwise there remains the prospect of being one of those stereotypes who, having several higher educations, work as sellers or loaders. I try not to think about the upcoming trial and deportation, I try to learn new things. It's not easy when you live on suitcases and don't know if you can afford to live under a roof and eat in the coming month. A good programming video can take your mind off the stress. As a former psychologist and almost linguist, having studied at four different higher education institutions, interacting with students of three different generations, with teachers of completely different levels, I can immediately recognize a good training video and a good language structure (interaction of thought and word of a speaking person), which is easy to perceive even to foreigners who studied the language mainly from textbooks and Hollywood films. Thanks for the good content.

  • @christophjahn6678
    @christophjahn6678 3 ปีที่แล้ว

    This is a great video and I would love to see more like it. Just like many others have already written before me, this advice is relevant not only for junior developers. I would even argue that it becomes more relevant the more senior you get. Because you start to develop a certain kind of assertiveness or even arrogance, due to your success. Taking a few steps back and look at the bigger picture really does help. Also, it kind-of makes it easier to explain to commercial people (often called managers) why it is not a brilliant idea to staff teams almost exclusively with inexperienced people. Not only will it likely produce bad results. But it will also deprive the "juniors" of a chance for proper mentoring and support. The latter takes time and nobody can support 10 folks. But that is probably a separate discussion (and video ;-) ). Thanks for the video!

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +1

      Thank you. I agree with you about the value of teams made up of a mix of experience. I think that companies a very dumb to not focus on training people, and for that you need some more experienced people to guide them.
      I led a team that did some very difficult, very cool things. We built one of the world's highest performance financial systems. It was a daunting engineering challenge. When we began we decided that we were going to hire people that we already knew, from personal experience, were great, and then very smart people that were new to the industry so that we could help to guide them. I am extremely proud of the impact that we had on several people's careers as a result. We helped them to grow to become great software developers. This wasn't a cost to our org, it was a benefit. Too many orgs are much too short-sighted in this respect.

  • @GuilhermeARomao
    @GuilhermeARomao 2 ปีที่แล้ว

    Thank you for this content. Really helpful!

  • @setondenougbodohoue
    @setondenougbodohoue ปีที่แล้ว

    Thanks a lot for your advice.

  • @alieninvaders1188
    @alieninvaders1188 3 ปีที่แล้ว

    Thanks! This has been the most self-reflective and thought-provoking video about problem-solving and organization.

  • @jan-hudak
    @jan-hudak 2 ปีที่แล้ว

    Thank you! Was very informative :)

  • @bjeouisaber6995
    @bjeouisaber6995 3 ปีที่แล้ว +2

    Thank you sir for your precious advice highly appreciate your efforts.

  • @tudor1899
    @tudor1899 ปีที่แล้ว

    Mr. David Farley, you are a treasure. Thank you for sharing your wisdom.

  • @tommornini2470
    @tommornini2470 ปีที่แล้ว

    42 years of experience here.
    Fabulous advise, delivered succinctly.
    One clarification I’d add: youngsters get obsessed by abstraction, and frequently mislead by conflating abstraction with inheritance and nouns.
    The key to useful abstraction are the verbs, and the nouns should be abstracted so they can be fed to the verbs indiscriminately, i.e. polymorphism.
    Add dependency injection, and you’re now able to usefully abstract.
    Abstraction IS NOT about writing a lot of conditional logic, it’s about removing conditional logic!

  • @no.5480
    @no.5480 3 ปีที่แล้ว +1

    Great video! Thank You for the advice and encouragement

  • @casper0at0ease
    @casper0at0ease 2 ปีที่แล้ว

    Love your style nad thank you for your generous teachings!

  • @rubenramos8900
    @rubenramos8900 3 ปีที่แล้ว +1

    I enjoyed this very much. Thank you.

  • @l0g1cb0mb
    @l0g1cb0mb ปีที่แล้ว +1

    I'll say that one of the biggest bits of advice is that talking about a problem bit; I think talking out, explaining the problem to one another is the core of what makes Pair Programming so effective. Second would be exposure to new ideas or ways of doing a thing that one may have done differently. The caveat being that if you see something you'd normally expect to result in an error, it may well be best to voice the concern (non judgmentally) rather than accept that the other person's skill is simply that good that they're showing you a manner wherein the error would be avoided. That may be the case, but stating your concern upfront is part of your contribution to the experience, and they may in fact actually be in error; so catching it early may save some time and frustration troubleshooting later.
    But back to my point on explaining the problem. Mulling an issue over in ones head may not be as productive as explaining the matter to someone else. Wherein doing so immediately exposes to you what the issue is you've been missing. They may or may not see it as immediately depending on where they're starting from comparatively. But, if you've been soloing an issue and get a partner for a brief moment, explain it to them, almost immediately while explaining it, the eureka moment happens, it's almost maddening, and you can't tell if that speaks to the power of pair programming or not frankly, but I'll give it the win, for that was almost always the impetus for the event occurring. ^_^
    I love personal space, but I can't gainsay dual-core development neither! ^_^
    But I ain't one to gossip... .

  • @viniricardoferrera
    @viniricardoferrera 3 ปีที่แล้ว +3

    I'm started programming 9 months ago. I'm at the beginning to crawl still. I became so hungry for knowledge that I'd never possibly imagined that I would be falling in love that hard for a thing. In the 9 past months, I had 3 burnouts.
    In the first one, I've spent at least one month until I can get back to the front of a computer again.
    This was when I've decided to learn how to learn to recover myself from burnouts readily and realized that I have become a programmer.
    Thank you for the valuable advice.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +1

      Thank you, and good luck. It is a very addictive pass-time, so take it easy, but have fun too.

  • @mwathibrian
    @mwathibrian 3 ปีที่แล้ว +15

    I am 2 years into my journey as a Software Developer and have found this video very insightful. Thank you.

  • @hebronwatson9532
    @hebronwatson9532 3 ปีที่แล้ว +1

    Super helpful stuff, sir. I look forward to using the resources you have outlined.

  • @bigbacktor
    @bigbacktor 3 ปีที่แล้ว +2

    Thanks for your advice. It reminds me of code complete.

  • @nicopostigo123
    @nicopostigo123 2 ปีที่แล้ว

    Great content, Thank you!

  • @alankjohn9263
    @alankjohn9263 3 ปีที่แล้ว +1

    Gonna recommend this to everyone
    This is just awesome not a second wasted covered so much I'm pretty sure I lost track at some point overall just really glad I came across this video

  • @jahmalspringfield316
    @jahmalspringfield316 3 ปีที่แล้ว +2

    Definitely informative, clear, and concise!

  • @romixch
    @romixch 3 ปีที่แล้ว +6

    Thank you for sharing this great summary. Its always good to step bach and think about this fundamentals. Even after 20 years of experience.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว

      You're very welcome!

    • @royhonders
      @royhonders 3 ปีที่แล้ว

      What exactly did you get out of these fundamentals?

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว

      @@royhonders The fundamentals are part of what I think of as a genuine "engineering approach". The outcome is software with fewer defects, that is easier to work on and easier to change to meet user needs.
      The focus of this "engineering approach" is on two things, optimising for learning - science, iteration, feedback, experimentation etc. and optimising to manage complexity, modularity, cohesion etc.

  • @SoapMacLavish
    @SoapMacLavish 2 ปีที่แล้ว

    Very interesting perspective, thanks for the content

  • @dehman6836
    @dehman6836 3 ปีที่แล้ว +1

    Thank you for the amazing free content

  • @armenchik_dzhan
    @armenchik_dzhan 2 ปีที่แล้ว

    awesome video, thank for sharing your experience.

  • @paulofernandoee
    @paulofernandoee 2 ปีที่แล้ว

    great content, thank you!

  • @scotthjackson5651
    @scotthjackson5651 3 ปีที่แล้ว

    Fantastic vid! I'm not exactly developing software for others to use (yet), but am creating data analysis workflows in python to improve business processes at the company where I work. I can totally see the value and the applicability of all the points mentioned in the video. Thank you for the tips and further areas to explore.

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +1

      Thanks for the feedback, and I am pleased that you found this video helpful.

  • @esino6667
    @esino6667 2 ปีที่แล้ว

    Great insights, thank you.

  • @marsrocks247
    @marsrocks247 3 ปีที่แล้ว

    This channel is blowing my ****ing mind.
    Just got my "full stack" belt (a tiny bit not really there yet maybe ish)
    Really getting serious, and this is echoing my best thoughts back to me fleshed out and reinforced while calling my bad habits out like an eagle spotting a mouse.
    BLESS YOU.

  • @alisbtan9870
    @alisbtan9870 3 ปีที่แล้ว

    I just started as a back-end java after a change of "career" despite having only a degree in chemistry, after months of self-taught development I was able to jump into the programming industry. I will treasure these tips and try not to fall into the most trivial mistakes that everyone complains about. Thank you very much Dave, wish you the best!

    • @ContinuousDelivery
      @ContinuousDelivery  3 ปีที่แล้ว +1

      Thanks, and good look with your change of career.

  • @insanity2753
    @insanity2753 3 ปีที่แล้ว +1

    Thank you, this was a great video.

  • @borkarfaiz
    @borkarfaiz ปีที่แล้ว

    Thanks! this clears a lot of things.

  • @gahshunker
    @gahshunker 2 ปีที่แล้ว

    This is golden information for self taught developers that come from different background other than CS. And it is available for free on TH-cam. Thank you kind Sir!

  • @lcividin
    @lcividin 3 ปีที่แล้ว +1

    Like for the T-Shirt alone awesome! but great advise as well thanks

  • @nullptr.
    @nullptr. 5 หลายเดือนก่อน

    Thanks for the tips

  • @jensBendig
    @jensBendig 3 ปีที่แล้ว

    Knowing that you don't know and opening that box by analyse and discourse is the most important step. If they hate Pair-Programming: Run! Being good with problem-analysis means being good with terms. That means: Be good with language. Solve problems structural. Awesome talk. Ah...and dont separate concerns by finding very strange concerns...

  • @cmdv42
    @cmdv42 2 ปีที่แล้ว

    This was great! 💯