Date: 201905
Local time of day: 0601-1200
Location: SQL.Airport, CA
Flight conditions: Marginal
Weather elements / visibility: Overcast; 10
Light: Daylight
Aircraft: SR20
Operator: Personal
Operating under: Part 91
Flight plan: IFR
Mission: Personal
Flight phase: Initial Climb
Airspace: Class D SQL
ATC / advisory: Tower SQL
Reporter organization: Personal
Reporter function: Single Pilot; Pilot Flying
Reporter qualification: Flight Crew Private; Flight Crew Instrument
Human factors: Communication Breakdown; Situational Awareness
Anomaly: ATC Issue All Types; Deviation - Track / Heading All Types; Deviation / Discrepancy - Procedural Published Material / Policy; Inflight Event / Encounter CFTT / CFIT
Detector: Person Flight Crew; Person Air Traffic Control
When detected: In-flight
Result: Air Traffic Control Issued New Clearance
Contributing factors: Procedure; Human Factors
Primary problem: Procedure

Narrative: SQL is less than 9NM from SFO. In order to allow IFR departures from SQL without conflicting with inbound IFR SFO traffic; a rather complicated local 'procedure' has been developed for departing SQL VFR until clear of SFO traffic; at which time SQL departures are handed off from SQL Tower to NORCAL to continue IFR. This procedure is not published and is provided to pilots verbally when picking up their IFR clearance from SQL Ground Control.On this particular day; the SQL ground controller seemed very rushed and/or distracted. It took several calls for him to reply to me (a later review of LiveATC.net recordings indicate he was replying to me while I was still on frequency); and he was speaking at an incredibly high rate; occasionally stumbling what to say.After asking to pick up my clearance to MRY; he rattled it off - including the incredibly complicated VFR to IFR 'procedure' - at rapid-fire pace. I did my best to keep up; and read it back to him. He then said 'read-back correct;' and I assumed I had gotten everything correct. Unfortunately; I had not. The ground controller had cleared me via the VFR to IFR 'procedure' and then *radar vectors* to OSI. I read back to him 'direct OSI.' Neither of us caught this error; and as a result; I turned direct OSI upon completing the VFR to IFR transition - toward rising terrain. Fortunately; the NORCAL controller caught this error and redirected me to a heading appropriate for my altitude and climb rate.There was clearly a chain of unfortunate events here. (1) The VFR to IFR 'procedure' used at SQL is incredibly complicated and not documented. (2) The ground controller was speaking too quickly to deliver such a complicated routing. (3) I copied down the clearance incorrectly. (4) The ground controller was not listening to my read-back; and did not catch my error.Were I to be in this situation again; I would ask the controller to speak slower. I must say; though; I am hesitant to do so; as I have been chastised by controllers (possibly this same controller) at SQL before for asking them to speak more slowly. As PIC; however; it is my responsibility to make sure I copy the clearance correctly; and I will make a point of speaking up if necessary in the future.I also think it would be helpful for the FAA to formalize this overly complex VFR to IFR departure procedure; so that we as pilots have something to reference. Trying to count on a pilot to copy it down at rapid-fire pace is asking for disaster.




Synopsis: Pilot reported a VFR to IFR Procedure in use at SQL airport which reporter states is incredibly complicated.