One thing I cringe at on adding to a building is not factoring in possible side to side loading on the original structure. Ideally you want the end walls of the new shed to be diagonally braced. You can either use solid plywood or just an X brace corner from diagonal corners and tied together where they cross. This stiffens the structure from side loads. Where those side loads come from and how much they are is the complicated part. Ideally if the original shed has solid walls or X bracing the X bracing on the shed may not be needed.
I saw a wood shed once that was four poles on each corner buried about a foot deep and a shallow angled roof on top with open sides. We had a bunch of snow in a two week period and there was about 6 feet of snow on the roof. The structure actually stared twisting as though a big hand was trying to rotate the roof relative to the columns on all four corners. The columns started cracking lengthwise. Luckily the wood was stacked to the rafters so as it twisted the roof dropped and transferred the load to the stacked wood inside. A couple of bolted or screwed X braces on two sides and the back would have most likely stopped that. My woodshed is similar but with X braces. I still stack the wood real close to the bottom of the rafters in a "belt and suspenders" approach
Roofs rarely fail due to structural issues, its usually the details that are the devil. Almost every deck and shed roof collapse I have ever heard of is someone nailed the header to the house instead of through bolting or using structural screws. The structure gets overloaded, the header pulls out from the building and it collapses. BTW, the other issue I have heard of is crappy flashing where a pocket forms between the wall and shed roof or deck where water can collect. This rots the header or the wall studs or both until something fails. Even with an overhang, the siding must be removed and flashing installed up the wall under the siding and down the roof to redirect water down the shed roof or deck instead of this pocket.
Structural engineers pay a bundle for liability coverage as they frequently are dealing with modifications to existing structures. They have to go super conservative on any design they do as they own the liability for the life of the structure. Carpenters on the other hand usually wing it and work under a LLC so even if it fails they are long gone and have protected their assets.