SAS Programmer in Teva Pharmaceuticals
Job DescriptionThe basic responsibilities are to provide SAS
programming support in deriving analysis datasets, summary tables, and listings in the clinical trial of the new drug development.
Training Program
Computer skills and Data structure Programming procedures SAS programming skills
Programming activity flows
5
Creating programming
rules document
Creating analysis (derived) datasets
Quality control (QC) TLG
Quality control (QC) derived
datasets
Creating TLG
Request programming resource/team
Review raw data transfers
(On going)
Before test data transfer
Review TLG
Documents needed - Approved protocol and final annotated CRF- Draft (endorsed) SAP/Mocks- Raw data from DP- Programming guidelines GDL-933-01 and GDL-933-02
Biostat provides rules in a Word document (Rules_xxx, eg. Rules_1063) and saved at, ..\Binder\10_Correspondences\Rules_xxx.DOC
Notes: - Needs to be ready before programming activities start and updated on an ongoing basis;
- Includes definitions, algorithms, formulas, etc for derived variables.
Clinical Programmer(CP) follows Rules.
Creating Programming Rules
6
For derived datasets and summary tables, QC requires 100% and independently data verification (double programmed).
All listings must be qced according to CP SOP-0000931.
All graphs must be independently reviewed and compared to source tables if applicable.
Biostat ensures- QC processes are followed for all deliveries; - No “ERROR”, “WARNING”, and unwanted “NOTE” messages in SAS log files for all types (TLG). Note: CP has macro tool (%chklog) to check log files- QC forms are completed properly for all deliveries and saved at ..\Binder\08_QC\QC_form_xxx.xls
Biostat reviews all deliveries before sending out to team.
Quality Control (QC) and Review
7
ADVERSE EVENT (D_AE)• Keep all variables from RAW STDM domain AE except AESQE,
AESTDY, AEENDY, STAGE • Additional variables required (also see general section for other
variables):
SAS Program Example
8
Variable Label Type Derivation
STAGE Pre/Post Baseline
Character Programming guideline
AETRTEM Treatment Emergent Flag
Character Y if STAGE=’POST’
AESTDY Study Day of Start of Adverse Event
Numeric Programming guideline
AEENDY End Date/Time of Adverse Event
Numeric Programming guideline
proc sql;
create table ae1 as
select a.*, rfstdtc,rfendtc
from ae_raw a,d_dm
where a.usubjid=d_dm.usubjid
order by usubjid;
quit;
Programs for D_AE
9
data ae;
set ae1;
%iso2sasdtm(dtc=rfstdtc,sasdt=rfstdt);
%iso2sasdtm(dtc=rfendtc,sasdt=rfendt);
%iso2sasdtm(dtc=aestdtc,sasdt=aeondt);
%iso2sasdtm(dtc=aeendtc,sasdt=aersdt);
aestdy = %relday(aeondt,rfstdt);
aeendy = %relday(aersdt,rfstdt);
%ae_stage;
if stage = 'POST' then
aetrtem = 'Y';
drop rfstdtc rfendtc aeondt aersdt;
run;
Programs for D_AE
10
Summary 15.3 Baseline Characteristics by Treatment Group Safety Analysis Set________________________________________________________________________________________________________________________ Variable Modafinil Placebo Total Response, n (%) (N=24) (N=24) (N=48) P-value ________________________________________________________________________________________________________________________ Clinical Global Impression - Severity Normal 0 0 0 0.8301 (a) Borderline ill 0 0 0 Slightly ill 0 0 0 Moderately ill 5 (21) 8 (33) 13 (27) Markedly ill 14 (58) 10 (42) 24 (50) Severely ill 4 (17) 6 (25) 10 (21) Among the most extremely ill patients 0 0 0 Not assessed 1 (4) 0 1 (2) Alcohol usage (per day) None 24 (100) 24 (100) 48 (100) Light usage (0-1 drink) 0 0 0 Moderate usage (2 drinks) 0 0 0 Heavy usage (>2 drinks) 0 0 0 Tobacco usage (per day) None 24 (100) 24 (100) 48 (100) Light usage (<10 cigarettes) 0 0 0 Moderate usage (10-20 cigarettes) 0 0 0 Heavy usage (>20 cigarettes) 0 0 0 Caffeine usage (per day) None 3 (13) 5 (21) 8 (17) Light usage (0-1 drink) 17 (71) 15 (63) 32 (67) Moderate usage (2-4 drinks) 3 (13) 4 (17) 7 (15) Heavy usage (>4 drinks) 1 (4) 0 1 (2)
________________________________________________________________________________________________________________________
ConclusionI believe everyone should get a internship before graduation. What I learned from my internship is not only the new skills or knowledge but also the experience to deal with real problems in a professional way. In class, we just need understand what our professor try to teach us and then finish our homework. Most of case, professor would provide us R codes and perfect dataset. We didn’t need to make any big change to the codes and datasets. But in my internship, you have to find a way to write your own codes and derive the input datasets by yourself. You have to find the textbook and try to understand them, then apply them into your job. So you should prepare to accept new staff not to depend on what you got from you previous classes.
Recommendations
Prepare for the job fair before 3 weeks Collect information about your potential employerPrepare for the interview
Thank You