experience.go (2696B)
1 package config 2 3 import ( 4 "time" 5 ) 6 7 type Experience struct { 8 ID string 9 Company string 10 Role string 11 StartDate time.Time 12 EndDate *time.Time 13 Current bool 14 Description []string 15 Tech []string 16 URL string 17 Logo string 18 LogoFilter string 19 Images []string 20 } 21 22 func GetExperience() []Experience { 23 return []Experience{ 24 { 25 ID: "hark", 26 Company: "hark", 27 Role: "software engineer", 28 StartDate: date("2026-02"), 29 Current: true, 30 Description: []string{ 31 "Hark is building vertically integrated AI systems across models, infrastructure, and hardware, focused on proactive, context-aware intelligence that moves beyond prompt-driven interfaces.", 32 }, 33 URL: "https://hark.com", 34 Logo: "/static/hark/logo.svg", 35 LogoFilter: "logo-invert logo-hark", 36 }, 37 { 38 ID: "mandolin", 39 Company: "mandolin", 40 Role: "senior swe intern", 41 StartDate: date("2024-10"), 42 EndDate: datePtr("2026-02"), 43 Description: []string{ 44 "Building AI agents for specialty drug access. Automating prior authorizations, benefits verification, and revenue cycle management.", 45 "Mandolin raised $40M to automate access to life-saving medicines, wiring AI labor into thousands of infusion centers, specialty pharmacies, and health systems.", 46 }, 47 Tech: []string{"typescript", "temporal"}, 48 URL: "https://mandolin.com", 49 Logo: "/static/mandolin/logo.svg", 50 Images: []string{ 51 "/static/mandolin/company.jpeg", 52 "/static/mandolin/company_silly.jpeg", 53 "/static/mandolin/employee_polaroids.jpeg", 54 "/static/mandolin/moment_polaroids.jpeg", 55 }, 56 }, 57 { 58 ID: "amplifier-health", 59 Company: "amplifier health", 60 Role: "swe intern", 61 StartDate: date("2024-06"), 62 EndDate: datePtr("2024-08"), 63 Description: []string{ 64 "Voice AI for early disease detection. Large Acoustic Model analyzing 1000+ voice biomarkers across 30+ health conditions.", 65 }, 66 Tech: []string{"python", "pytorch"}, 67 URL: "https://amplifierhealth.com", 68 Logo: "/static/amplifier/logo.svg", 69 LogoFilter: "logo-invert", 70 }, 71 } 72 } 73 74 func GetCurrentJob() *Experience { 75 return CurrentJob(GetExperience()) 76 } 77 78 func CurrentJob(experience []Experience) *Experience { 79 for i := range experience { 80 if experience[i].Current { 81 return &experience[i] 82 } 83 } 84 85 return nil 86 } 87 88 func GetExperienceByID(id string) *Experience { 89 for _, exp := range GetExperience() { 90 if exp.ID == id { 91 return &exp 92 } 93 } 94 95 return nil 96 } 97 98 func date(s string) time.Time { 99 t, _ := time.Parse("2006-01", s) 100 return t 101 } 102 103 func datePtr(s string) *time.Time { 104 t := date(s) 105 return &t 106 }