Slashdot Mirror


LinkedIn Is Open Sourcing Their Testing Frameworks (github.io)

destinyland writes: LinkedIn is open sourcing their testing frameworks, and sharing details of their revamped development process after their latest app required a year and over 250 engineers. Their new paradigm? "Release three times per day, with no more than three hours between when code is committed and when that code is available to members," according to a senior engineer on LinkedIn's blog. This requires a three-hour pipeline where everything is automated, from committing code to releasing it into production, along with automated analyses and testing. "Holding ourselves to this constraint ensures we won't revert to using manual validation to certify our releases."

10 of 77 comments (clear)

  1. Just remember by Ol+Olsoc · · Score: 4, Insightful
    Share your email login credentials with them. Much appreciated.

    What is amazing is how many people do just that.

    --
    The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
  2. Linked in Open sources by invictusvoyd · · Score: 2, Insightful

    Their Spam framework.

  3. Re:Senior Engineer? by rednip · · Score: 3, Insightful

    I think that you lost the war for 'what engineer means' when 'train engineer' became common lexicon a long time ago. Perhaps you could take the better fight that 'Software Architects aren't really Architects'.

    --
    The force that blew the Big Bang continues to accelerate.
  4. The better to spam you with! by brettw · · Score: 2

    All this efficient check in and automated testing, just so they can send spam to every email they get their hands on.

    My employer specifically marks linked in spam as "NOT SPAM". So custom filters it is.

  5. 3 hours is waaaay too long by JustAnotherOldGuy · · Score: 4, Funny

    Oh my heavens, 3 hours is waaaay too long in this fast-paced, ever-changing world.

    Why not just do an automatic commit with every keystroke, like the Windows 10 telemetry does?

    --
    Just cruising through this digital world at 33 1/3 rpm...
  6. Verification and validation by DeBaas · · Score: 3, Informative

    First of all, thank you Linkedin for open sourcing this! Always good to share.

    First, three hours is not enough time to conduct any manual testing steps, so holding ourselves to this constraint ensures we won’t revert to using manual validation to certify our releases.

    I've been in testing for some time and have been taught to make a distinction between verification and validation.
    Verification is checking if the software works according to specs. Validation means: does it actually work for us. By defintion that means that you can automate verification but not validation.
    Is that just semantics? Not for testers. In the test community there currently is a big debate going on checking vs testing.
    See i.e. Michael Boltons blog. . Checking can be done automated. Real validation in my opinion can not.

    What I am curious about is the 'to production each three hours' That sounds great, but although I don't use a linkedin app on my phone, I am still pretty sure users don't get their app update three times a day.. With such rapid deployment, I suspect it takes multiple deploments before it adds up to a significant increase in usable functionality.

    Many small releases means in general that mistakes are also small and quickly fixed. I am actually in favour of them. But it is not a full garantuee that one of these small releases will not break something badly that would have been found by even a limited manual test. The chance that that happens may be much lower with small releases but it still exists and the impact is still high.

    Automated tests can perform a huge amount of checks quickly. Humans can't beat that. But they can also overlook the blatanly obvious. I would hope they would have manual testing at least prior to releasing new functionality. To find these things, but also to do some validation by the definition above.
    Else I suspect it may work well for them for quite some time but it may bite them badly at one point as well.

     

    --
    ---
  7. Re:Senior Engineer? by angel'o'sphere · · Score: 2

    Hm ... I guess those guys think different: https://www.sei.cmu.edu/cmmi/

    Also, what is so hard to grasp that there is no "engineer"?

    There are "mechanical engineers", "electrical engineers" and others and in the end also "software engineers", I for my part actually studied "software engineering" and "computer science" ... funnily I should have worded it different, I studied "computer science" and "software engineering" is a important but depending on what else you study: a small sub section of CS.

    I don't care what kind of engineer you are, that you seem so pissed, in real live I'm half an "Requirements Engineer", wow ... another engineer ...

    --
    Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  8. Re:How do they handle database changes? by Hognoxious · · Score: 2

    They use MongoDB. You don't need to worry about database changes, because it's webscale.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  9. 250 Engineers? by 110010001000 · · Score: 2

    There is no project on Earth that requires 250 developers. And yeah, the idea of continuos releases and automated testing if very common in the industry. That is what git/jenkins/buildbot does best.

  10. so much engineering for such a small company by AnAlchemist · · Score: 2

    Is it just me, or does LinkedIn do an amazing amount of engineering for a website that's basically a simplified Facebook + job board?

    Do they really need this amount of engineering? Or are they doing it just for the sake of doing it?