Thunder, lightning and a torrential downpour forced Jets OTA practice No. 9 from the outdoor practice fields at the Atlantic Health Training Facility, to inside the comfort of their indoor bubble.

Maybe the sudden change threw the Jets off, because absent a few highlights, it wasn’t the prettiest of days for the offense or defense.

So, who looked good? Who looked bad? Who stood out? Here are some observations and highlights from the final OTA open to the media:

Jordan Jenkins working exclusively with Jets first-team defense.

You figured it was only a matter of time before Jenkins took over for Trevor Reilly outside Lorenzo Mauldin as the Jets starting outside linebacker. It appears as if the timetable for that situation transpiring was about two weeks.

On Wednesday, Jenkins got every rep with the first-team defense — outside of a few plays he was substituted out for Freddie Bishop (more on that in the coming days). Reilly seemed to be relegated to the second unit.

Jenkins had a solid workout, too. He was regularly in on run plays, and got a couple of pressures on the quarterback. He had a would-be sack on quarterback Geno Smith where he came screaming off the edge, and a second where he nearly had a forced fumble, but Leonard Williams got there first.

It was an excellent workout for the rookie.

Bryce Petty has solid practice, looks to be improving

There have been nine OTA practices to this point, three of which have been open to the media. This latest installment was Petty’s best thus far.

The second-year pro looked a bit more calm in the shotgun and under center, made several nice throws and avoided any costly turnovers. On one play, Petty put the ball perfectly in the hands of wideout Jalin Marshall in the corner of the endzone on a flag route, but Marshall dropped it. A play or two later, Petty hit Brandon Marshall for a touchdown on an in.

But Petty’s best pass of the day came on a 15-yard completion to Wes Saxton. The quarterback dropped the ball in the perfect spot between three defenders in right before Saxton ran out of bounds.

The practice certainly wasn’t flawless for the Baylor product, but it was an improvement from the first two media-open sessions.

Christian Hackenberg accuracy still a concern

Jets Wire will have a ton on this in a sperate post, but addressing it quickly, Hackenberg’s accuracy still seems to be a bit of an issue, which is understandable. It’s clear from watching the Jets second-round pick his fundamentals are flawed. His feet are off, sometimes he forgets to set them, and the result is inaccurate throws on easy passes.

The easiest way to describe Hackenberg? He’s a work in progress. He has the talent, but he’s not ready yet.

Jalin Marshall, Charone Peake works in progress

It’s obvious why the Jets like undrafted free-agent wideout Jalin Marshall. He’s pretty polished as a route runner, fast and has good hands. The biggest issue with him just seems to be concentration.

Marshall dropped two should-be, would-be touchdown passes Wednesday. Both balls him in right in the hands, both then bounced right now. If he can focus a bit more, he has the skills to play in the NFL. That’s evident. CC: This highlight.

Peake, on the other hand, looks to be a bit more rough around the edges. He doesn’t have the quickest feet, and his routes aren’t as crisp as some others at his position. It’ll be interesting to see how he progresses throughout camp.

Dee Milliner continues to look very, very good

No one is benefiting more from Darrelle Revis‘ absence than Dee Milliner.

Starting in place of the veteran cornerback while he recovers from a wrist injury, Milliner continues to make plays each practice — or at least those open to the media.

On Wednesday, two plays specifically stood out. On one of the first plays of team drills, Milliner made a diving interception of a Geno Smith pass, got up, then returned it for a touchdown. Later in red zone drills, he went up on a goal-line fade to Brandon Marshall and batted the ball away.

This is now the third-straight practice (open to the media) that Milliner has looked really, really good. He’s building quite the momentum for training camp.

PRACTICE HIGHLIGHTS

***

Connor Hughes covers the Jets and is the managing editor of Jets Wire. He can be reached on Twitter (@Connor_J_Hughes), or via email (chughes@usatoday.com)