Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Is it time to reassess how we build and operate development teams?

Is it time to reassess how we build and operate development teams?

Scheduled Pinned Locked Moved The Lounge
sharepointcombeta-testingquestioncode-review
36 Posts 13 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Mycroft Holmes

    You seem to assume that a developer can have the same quality of skill as a PM/BA, that is highly unlikely if he is highly skilled in one. You have heard of the saying "jack of all trades is a master of none". Seems appropriate.

    Never underestimate the power of human stupidity - RAH I'm old. I know stuff - JSOP

    Z Offline
    Z Offline
    ZurdoDev
    wrote on last edited by
    #16

    Your experiences and mine are different. Nothing wrong with that.

    Social Media - A platform that makes it easier for the crazies to find each other. Everyone is born right handed. Only the strongest overcome it. Fight for left-handed rights and hand equality.

    1 Reply Last reply
    0
    • M MSBassSinger

      I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

      Greg UtasG Offline
      Greg UtasG Offline
      Greg Utas
      wrote on last edited by
      #17

      There has been some discussion around this, and it is clear that different people have seen different things work well. There is no single solution. It is up to whoever assembles a team to know (or observe) the strengths and weaknesses of its members. In some cases, combining roles works well. In others, letting people specialize is preferable. All team members should be compensated for their contribution. No role--product management, project management, senior developer--is inherently more valuable than another. My own experience has been that some outfits value managers more than developers, so they end up with developers going into management when it would have been better, for everyone concerned, if they had remained pure developers.

      <p><a href="https://github.com/GregUtas/robust-services-core/blob/master/README.md">Robust Services Core</a>
      <em>The fox knows many things, but the hedgehog knows one big thing.</em></p>

      M 1 Reply Last reply
      0
      • Greg UtasG Greg Utas

        There has been some discussion around this, and it is clear that different people have seen different things work well. There is no single solution. It is up to whoever assembles a team to know (or observe) the strengths and weaknesses of its members. In some cases, combining roles works well. In others, letting people specialize is preferable. All team members should be compensated for their contribution. No role--product management, project management, senior developer--is inherently more valuable than another. My own experience has been that some outfits value managers more than developers, so they end up with developers going into management when it would have been better, for everyone concerned, if they had remained pure developers.

        M Offline
        M Offline
        MSBassSinger
        wrote on last edited by
        #18

        Excellent points. A good leader knows how to take solid principles and adapt them to what makes the team work best. On your point about developers going into management, I have seen that happen, also. That is why I don’t take a leadership or management position unless it also involves coding. I find that being a programmer is essential to really understanding how to lead a team of developers to be greater than the sum of their parts. Thanks for your post.

        1 Reply Last reply
        0
        • Greg UtasG Greg Utas

          Sure, but I saw nothing in the article about team size. It seemed to be a general prescription.

          M Offline
          M Offline
          MSBassSinger
          wrote on last edited by
          #19

          Not a general prescription. General principles that can be applied to teams of various sizes. If teams grow large, then other considerations have to be applied. Should a team of twenty be broken into four teams of five? If so, how is leadership delegated effectively? Those are topics for another day. I have successfully applied the principles I wrote about to teams from three to twelve. I think that covers the size of most functional teams.

          1 Reply Last reply
          0
          • M MSBassSinger

            I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

            L Offline
            L Offline
            Lost User
            wrote on last edited by
            #20

            Typical "modern" Boeing style.

            Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.

            M 1 Reply Last reply
            0
            • M MSBassSinger

              I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

              M Offline
              M Offline
              maze3
              wrote on last edited by
              #21

              This is where my lack of other development processes (building construction, sales, marketing .ect) gets muddy. The "traditional" way does work, followed by a sentence of the requirements that fits in. The improved solution, does work, for certain situations. Keep in mind, there are people that have worked 20+ years in solely one or the other ways, and might not easily see another way of doing it. The improved solution looks to tackle some of these BUSINESS issues. - time, cost, innovation If you have lots of small projects and some longer projects, a BA can be a big help to shift low cost work out of the time of a programmer. Also having a programmer at the early stage can help cut through a day or 2 of delay getting a 3 day project finished because they can answer the quick questions, at the expense of them working on some other work In short, if you have a single long focused project, some middle people might not be needed. If you are doing lots of short projects, middle people might help. (a lot of "might" words - people are people and not all people are created the same, but are equal so I don't know how this maths is supposed to work?)

              M 1 Reply Last reply
              0
              • M maze3

                This is where my lack of other development processes (building construction, sales, marketing .ect) gets muddy. The "traditional" way does work, followed by a sentence of the requirements that fits in. The improved solution, does work, for certain situations. Keep in mind, there are people that have worked 20+ years in solely one or the other ways, and might not easily see another way of doing it. The improved solution looks to tackle some of these BUSINESS issues. - time, cost, innovation If you have lots of small projects and some longer projects, a BA can be a big help to shift low cost work out of the time of a programmer. Also having a programmer at the early stage can help cut through a day or 2 of delay getting a 3 day project finished because they can answer the quick questions, at the expense of them working on some other work In short, if you have a single long focused project, some middle people might not be needed. If you are doing lots of short projects, middle people might help. (a lot of "might" words - people are people and not all people are created the same, but are equal so I don't know how this maths is supposed to work?)

                M Offline
                M Offline
                MSBassSinger
                wrote on last edited by
                #22

                Thanks for the response. Lots of good points. I started my programming life long ago by programming computerized commercial environmental systems. That is where I "cut my teeth" on the "Soup to Nuts" concept. I had to quickly learn and be successful with the manufacturing, construction, sales, marketing, training, and personnel management (from electricians and pipefitters to programmers). I drew on the principles I learned then to apply to other projects over the years in more traditional software projects. You make a good point when there are lots of small projects or a large project. In those cases, I found having a BA to handle the "scribe" duties, and delegating some or most of the project management duties to other senior-level and mid-level software engineers (as their gifts and talents apply) allows the overall approach to work. They key to success, in my experience, is that BAs and PMs do not have authority to manage the project. Their skills are there to assist and report to the team leader. At some point, when the software development team is large enough to create multiple teams, the software engineer that manages all the teams can focus on looking at new features and technologies, and prototyping so he or she can choose what best fits the goals of the organization, and help teach and mentor the various team leads and team members. The principles do scale, as long as the person leading has the skills to adapt them to what is needed, rather than follow a recipe.

                1 Reply Last reply
                0
                • L Lost User

                  Typical "modern" Boeing style.

                  Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.

                  M Offline
                  M Offline
                  MSBassSinger
                  wrote on last edited by
                  #23

                  Would you be willing to expand on that, for those of us who never worked for Boeing? I am a bot familiar with Lockheed's SkunkWorks, though.

                  L 1 Reply Last reply
                  0
                  • M MSBassSinger

                    Would you be willing to expand on that, for those of us who never worked for Boeing? I am a bot familiar with Lockheed's SkunkWorks, though.

                    L Offline
                    L Offline
                    Lost User
                    wrote on last edited by
                    #24

                    MSBassSinger wrote:

                    Would you be willing to expand on that, for those of us who never worked for Boeing?

                    I never worked there; they were a lot in the news, always with a similar topic. The Insider News[^] The Insider News[^] New 737 Max software glitch discovered - CNN[^] https://www.nbcnews.com/news/us-news/faa-finds-potential-flaw-boeing-737-max-software-updates-n1022516[^] Blackout Bug: Boeing 737 cockpit screens go blank if pilots land on specific runways • The Register[^] There were a lot more articles (in a half-year period); the gist is that they were outsourcing software-development to a cheaper country, that NASA wanted to re-evalaute the software they got from Boeing, and the news that a test-traject of 27 months had been reduced to 11 months.

                    Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If

                    M 1 Reply Last reply
                    0
                    • L Lost User

                      MSBassSinger wrote:

                      Would you be willing to expand on that, for those of us who never worked for Boeing?

                      I never worked there; they were a lot in the news, always with a similar topic. The Insider News[^] The Insider News[^] New 737 Max software glitch discovered - CNN[^] https://www.nbcnews.com/news/us-news/faa-finds-potential-flaw-boeing-737-max-software-updates-n1022516[^] Blackout Bug: Boeing 737 cockpit screens go blank if pilots land on specific runways • The Register[^] There were a lot more articles (in a half-year period); the gist is that they were outsourcing software-development to a cheaper country, that NASA wanted to re-evalaute the software they got from Boeing, and the news that a test-traject of 27 months had been reduced to 11 months.

                      Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If

                      M Offline
                      M Offline
                      MSBassSinger
                      wrote on last edited by
                      #25

                      Thanks for adding those links. No, what I wrote has nothing in common with Boeing or its outsourcing. I do not believe that outsourcing, especially to cheap foreign labor overseas or domestically via H1-B, is a good idea. In almost all cases, the work product is flawed and requires substantial fixing by in-house staff, and put intellectual property (IP) in jeopardy.

                      1 Reply Last reply
                      0
                      • M MSBassSinger

                        I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

                        L Offline
                        L Offline
                        Lost User
                        wrote on last edited by
                        #26

                        Since "software-engineering" isn't, it takes skill to develop good software. Most of the time, that skill isn't there, regardless of how you structure things. If someone doesn't "own" it, it never gets done right.

                        It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food

                        M 1 Reply Last reply
                        0
                        • L Lost User

                          Since "software-engineering" isn't, it takes skill to develop good software. Most of the time, that skill isn't there, regardless of how you structure things. If someone doesn't "own" it, it never gets done right.

                          It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food

                          M Offline
                          M Offline
                          MSBassSinger
                          wrote on last edited by
                          #27

                          Quote:

                          Since "software-engineering" isn't

                          Actually, it is. "Engineering" as a noun means: "the branch of science and technology concerned with the design, building, and use of engines, machines, and structures." I have done software engineering for real engines, machines, and structures, and the definition equally applies to virtual equivalents. Coders may not take an engineering approach, but I (and many others) do. That includes using value engineering.[

                          Quote:

                          Definition of software engineering : a branch of computer science that deals with the design, implementation, and maintenance of complex computer programs

                          ](https://www.merriam-webster.com/dictionary/software engineering)[^]

                          L 1 Reply Last reply
                          0
                          • M MSBassSinger

                            Quote:

                            Since "software-engineering" isn't

                            Actually, it is. "Engineering" as a noun means: "the branch of science and technology concerned with the design, building, and use of engines, machines, and structures." I have done software engineering for real engines, machines, and structures, and the definition equally applies to virtual equivalents. Coders may not take an engineering approach, but I (and many others) do. That includes using value engineering.[

                            Quote:

                            Definition of software engineering : a branch of computer science that deals with the design, implementation, and maintenance of complex computer programs

                            ](https://www.merriam-webster.com/dictionary/software engineering)[^]

                            L Offline
                            L Offline
                            Lost User
                            wrote on last edited by
                            #28

                            Unless you can also "think" and "know" your problem domain, what you call "engineering" in software, is just repeating someone else's mistakes; and mostly copy and paste. (The ever popular "Hospital Management System" keeps coming to mind. Codez plz.)

                            It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food

                            M 1 Reply Last reply
                            0
                            • L Lost User

                              Unless you can also "think" and "know" your problem domain, what you call "engineering" in software, is just repeating someone else's mistakes; and mostly copy and paste. (The ever popular "Hospital Management System" keeps coming to mind. Codez plz.)

                              It was only in wine that he laid down no limit for himself, but he did not allow himself to be confused by it. ― Confucian Analects: Rules of Confucius about his food

                              M Offline
                              M Offline
                              MSBassSinger
                              wrote on last edited by
                              #29

                              If one cannot "think" and "know" - and I add, "knowing why", that person will remain just a coder.

                              1 Reply Last reply
                              0
                              • M MSBassSinger

                                I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

                                S Offline
                                S Offline
                                SeattleC
                                wrote on last edited by
                                #30

                                There is a case to be made for specialist PMs and Scrum Masters, and an equally valid case to be made for keeping the whole project within the software team. It depends on the scale of the project and the familiarity of the knowledge domain to the developers. Different solutions will be optimal for projects of different sizes and complexity.

                                M 2 Replies Last reply
                                0
                                • S SeattleC

                                  There is a case to be made for specialist PMs and Scrum Masters, and an equally valid case to be made for keeping the whole project within the software team. It depends on the scale of the project and the familiarity of the knowledge domain to the developers. Different solutions will be optimal for projects of different sizes and complexity.

                                  M Offline
                                  M Offline
                                  MSBassSinger
                                  wrote on last edited by
                                  #31

                                  Your statement is 100% correct if what I wrote is applied as a plan for “one size fits all”. However, the article discusses principles, not a plan, that is scalable from a single small team up through a large, multi-team software shop. I mentioned in an earlier response that BAs could be used as scribes for larger projects. But the key is that when BAs and PMs can be justified, they report to a team lead or software development manager who is a practicing software engineer with the multidisciplinary knowledge, skills, and abilities mentioned in the article. Non-software engineers should not be in the driver’s seat for software projects if one wants success and excellence.

                                  1 Reply Last reply
                                  0
                                  • M MSBassSinger

                                    I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

                                    K Offline
                                    K Offline
                                    KateAshman
                                    wrote on last edited by
                                    #32

                                    I don't like it. My team has 1 dev, 1 BA, 1 PO and 1 QA, and our velocity greatly exceeds that of a team with 6 devs doing multidisciplinary work. I rely on my team every day. ♥️

                                    M 1 Reply Last reply
                                    0
                                    • K KateAshman

                                      I don't like it. My team has 1 dev, 1 BA, 1 PO and 1 QA, and our velocity greatly exceeds that of a team with 6 devs doing multidisciplinary work. I rely on my team every day. ♥️

                                      M Offline
                                      M Offline
                                      MSBassSinger
                                      wrote on last edited by
                                      #33

                                      That is great that it works for you. Maybe you and your team don’t have the multidisciplinary knowledge, skills, and abilities (KSAs) to pull off a “Soup to Nuts” process. Many organizations don’t hire team leads with those KSAs. As to your claim about velocity and 6 devs with interdisciplinary skills (which was not what the article described), how do you know? What can you compare your team’s productivity to? I wrote the article from experience doing both and analyzing how both processes work. I found the productivity and quality of work to be higher with the kind of team I described.

                                      1 Reply Last reply
                                      0
                                      • M MSBassSinger

                                        I figured this is a good place to get pro and con feedback. Soup to Nuts in Software Development[^]

                                        M Offline
                                        M Offline
                                        Mario Luis
                                        wrote on last edited by
                                        #34

                                        Just a comment, in South Africa a lot of the development is done in the manner as described in the article, only the large dev houses etc have the resources to utilize so many additional members to a development team who do not produce code. Most SME's have small dev or customization teams that cover many roles amongst its members. I'd say its one of the attractions for international companies in attracting the local talent here as the depth of experience is a lot broader than a strictly segmented dev path.

                                        M 1 Reply Last reply
                                        0
                                        • S SeattleC

                                          There is a case to be made for specialist PMs and Scrum Masters, and an equally valid case to be made for keeping the whole project within the software team. It depends on the scale of the project and the familiarity of the knowledge domain to the developers. Different solutions will be optimal for projects of different sizes and complexity.

                                          M Offline
                                          M Offline
                                          MSBassSinger
                                          wrote on last edited by
                                          #35

                                          Quote:

                                          There is a case to be made for specialist PMs and Scrum Masters, and an equally valid case to be made for keeping the whole project within the software team

                                          I agree - that is exactly the assessment that a seasoned, multidisciplinary team lead or software manager needs to make in cooperation with the manager(s) of the PM(s), BA(s), and Scrum Master(s). Defining specific roles and duties of the ad hoc members of the team, when their presence is justified, takes the engineering and other multidisciplinary abilities of the team lead in conjunction with the PM(s), BA(s), and Scrum Master(s) - and the buy-in and cooperation of the development team (Developers and QA).

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups