#&RWR@MS,*i ' ' .o ~ ^HM+N0NM88B&WA
%N@WeN0&M#A# - ·+ -n::o~ ,··'^ c+o -n=#;u, oxM8##%%8ARR
&WR08NNMMMBH= :v==M%o: ,iW`M ·^^~@a'MvAMNv''o: ``.x*%*+^ : 8=,+* -8;8xcixR:uWx*HBA0#AR&: ~v,*A&%@8M0+
008%&%N@Wo:W@u ~:AA&&&H&%* ^W*· -,i· o c: +*HW`~;xRMR8A&&MAHBW*&;on. ^- ·:*W*N%no=o%R* ,'*SBRH@WoHMM0o%MWHMBv 'o ` ##%#AA++
x8e#8oux . iMo#A0N%BxABa·:;n, '-;AN*c +·=^vo*v: xN@W&%#RR%##@MM#@+' .xS=v ou vM%A@&AWHWHRHMM80B@#B%RNo80%#MMH%%0A8@H- ;+RM#S
^&SW8RWW%#B8#RMH@8N8* ,o0#+- Wo`c8ovo S#NW%&N%8MWAB&: v~- cM^ u&RN%A0@%HBR@WMN&W8#MS#@%HRN&%MMWB#o8R&; :n
^R%HWH@%##W0A@MM&B@@8WMoox%-,,=& '&+8Ax: @M8&@W@A%N&A: ~x Mn&%aA&@@M@@%A@&NWRH@R%W8&H@NaNBWo&8%.i.0=: n
M#&Nue:A*&0#W@%8R0A&R@%88MA8H&0%i8` x8x8 iR8%8oR*W@+x ·e ^`M%ve#BNMNBN%#8H&N&Axe8AMH&R%RB&BB@HN* A*
'~x:- 'e@%@W8@aRB%R@@NWN8%%MeW%i ,R@+· .&MR#0&MRMAv` `ax@Mcv+' :o=*a#RWBe8H8NN&B@M&#R&RM@08M#@AR&AAHWR8x^ uNB;
:^ uSW0&@WAWBH#NW*RRN8= `- ·~=80+· nA#H=#Ba~ o ' =HW%+008:8x8HAAHBAB&&HM0WW%#8HR%8HABA#H@AW#0%H%BBNS xRo
x8MW#R#R@HM%8WA@W ·M*:ou ,MH@B~ oxRW ·*@xS=&#A0=oWAH8NMH0W00%M#R080oRH#0@@%0H&@00HA%#NWNAv,~,- vu
':&BA%M@@8H8*88#M@c %oBa~= 'x% :N&00-·&%+WRB#08HH%B%@&&M0&08A%@0A%&@&%&HM&0NNB#&ARHR8R#x=c .
.+HR&@R#BM%B#8ABHBBoo.WN=M@NM^ +o ~W+B8o `;&W8HBANMH&A@H88RB0&8&&A%RBR0RB#A#%8BR0HW&#@B#M&A:a-
`8#8@aBMR%@#R0%AW#0HS@MMHMMM8#: .x8n ·cxv`=NB%&R#&HNMAMNMBN%WRW@A%B&0RR%M8HBRMMW@W&&NRM%B@HH%o i o
8ANCADENAS&8NB#@NA8%HHB@0%u;;*n vnvNx n+RBa0NN88&@00&&WAe0BRBSN&W0A&&A8#WB8WH%BN#NWB#@@BeWBNW0+ x;
&%&WB80MRA00AM@@MWNxN#NMR%8+ ;c: 'caA&8BM8aNM@%HN#8RNWW0S80A8AWBW%&AH&H@@@�#000WHR&RNH0BW= :o
%8R@@&%MM%&@@#%AARBNMu:+' ,W&W%M0ioHNB8&.o:=#00n eRN%HAH8HM#&&HH&M&&A0RWMB&B&R&%':oa ~@:
*%&%M#@0SSHBBHR%MRN%WR+' ^B8A8,.`·^oan@eWW·;=·=AxRv +WRR@%H=*a#%8=%BB&BHA#ANA%&%MM*: uv '*e8
H8@@%%%%WWW#0W#NNWax +#@Hi ^ ,i -;:80B#0%M##B,iB%W8B&N@NNB8#AM#BWN0MARNANNR%@M +·
;aAB8R#@+&R#W0AM0u- +#i%NNAM. ^.xW8&BH%0%M%NNBH##&*&#B&A@0@B#@%NNMMR@&0+
:xn&MMMA0:`'o R* MN8WxR@M+W@*,W0a=:8x#@A8W8=@0@N&W@##8@@NWBA0R%A@WA&%BW@0NM#c
o o o0B0A, ;v · u#0AMNW&HBRBW&BHWB%0WM:8W%8#o'+S&SWe8NB%#Ax8@#8#HRRWR@NNW8HH+ ·
: oAM&· ** u~+, -0N@e##MWA&8W%x&#%@R�W8^%R##8%&MM+ cx0RAMxMWu+=AW#%@%:i'
v8M8e*M~ '`x= uRWHRWHM%MN#B&MRHAH0RB0888·vHN#AWA%' n#@MN' xSBH@W'
`MW8o iW0AA@8#N@H&BR8#+%M@@%0*&Ho,a0oxx: =@R~ +o#NS8
oH :cxon·.^ xHA0HAWMR%#W@NM&B@H0WRHN@R#an~v~ nR^ -= i&,
-..*HARARM%8+ -MRN&&Bu@#%AM0BM#%W&@MAN0W%HWR, ^o ,*; 'o
W%MN&N0WMN&oS: ,o - ~-H#M&@AR@8#&&N8&RH+ ;W8o x8#u
&8#A#WBMBWHWB@o*·, ,B@0M%o8BBNRWHRHn -08i +B8Wooa: ` :,
`#N#BMA@8#B#@&A0#R00ono -a@M0&N0BeA&AH, aS `. ;* -vx8&S· '
eNMN8W&%%0W+&@%%%@W@W% -0#M%%MBA&AaW' ··=' +A@&v : ~
oBo&08A0#&08&M0AA*%v v&W#MWN%W&*#8+ x· , =, o
oa%MR@HMNM8@A00B%& NN#WANMB@#HMe~ iNM ~~v#B= W.
=H%H&W8&0%%BW%A x#&M0#NB#@8 B8^ nA%HAR&8 xoe
*RA#&M0ANHB@e. 0&aB%8%Bo= `xo '%%WHWHAW8#0B@NW
=&HR0RHNA%% 'M&R8W%M~ :HAMEDN&%BWRHMBAR@ ·
:0HRMN@H%@~ =8B&M: cWM%&W0BAH&8B@%N0&x
:BN00#Wa+ · N8WWBB&A&B@@&&@NN0v
M@@WW%= ,WSi=, %#8@A@0#@*
eAA=W .%MH@8a,
-HHW' +a=Ri o
,#@Wo = ,B
aN8 M ^·%^
:v; ~;xo
^Wv
0
o`~
: ~o·
',
I'm Ed, a software engineer who designs.
I ship web products that stay clear—and fast—as they grow.
Personal site and notes.personal2026
Delivery tracking system.in-house2022
Commerce ops that have to stay fast as volume grows.in-housePresent
Classroom productivity app.in-house2022
Multi-tenant APIs for ingestion, fulfillment, and reporting.in-house2025
Shopify webhook reliability.client2024
soon
Untitledsoon