Changing Status to H-1b
Your employer will need to file electronically a Labor Condition Application (Form ETA 9035) with the Department of Labor (DOL) to prove that your employer needs to hire a foreign worker and that your employer will be paying you the "prevailing wage" for that type of work in that geographical area. Fulfilling all the requirements and obtaining a certified approval for the Labor Condition Application from DOL takes about a week. After that, your employer can file an H-1B petition (USCIS Form I-129) for you, and you'll probably want to pay the $1,000 fee for premium processing, which will give you the approval within two weeks if everything is correct in the petition. If you don't do premium processing, it could take from 1 to 4 months to obtain approval of the H-1B petition. In any case, make sure your petition is filed with USCIS prior to the expiry of your OPT to ensure that you can continue working legally in the United States.
Applying for Your Green Card
If your employer is willing to sponsor you, your employer will have to file a Labor Certification Application (Form ETA 9035) with DOL again. This usually takes 4-6 months for approval but can take even longer. Once the Labor Certification Application is approved, your employer can file an Immigrant Petiton (USCIS Form I-140) with USCIS, and if the priority date is current for your preference category, then you can concurrently file a Green Card Application (USCIS Form I-485). If the priority date is not current, you'll have to wait for it to become current before you can file your Green Card Application. You'll still be protected by your H-1B status while you wait. If the Immigrant Petition is approved and the Green Card Application has been pending for more than 180 days, then you can change employers without having to have file a new Immigrant Petition or having to file a new Green Card Application provided that the new position is in the same or similar occupation and field.