From 153301e6ffec2de4c042ee441406d01624ae19ee Mon Sep 17 00:00:00 2001 From: rodri Date: Thu, 2 Jun 2022 18:24:11 +0000 Subject: added a recent cover letter. --- cover.ms | 17 + cover.pdf | Bin 0 -> 12366 bytes cover.ps | 899 +++++++++++++++++++++++++++++++++++++ cv.pdf | Bin 44390 -> 44345 bytes cv.ps | 1477 ++++++++++++++++++++++++++++++------------------------------- es/cv.pdf | Bin 45715 -> 45715 bytes mkfile | 12 +- 7 files changed, 1660 insertions(+), 745 deletions(-) create mode 100644 cover.ms create mode 100644 cover.pdf create mode 100644 cover.ps diff --git a/cover.ms b/cover.ms new file mode 100644 index 0000000..9bf5a42 --- /dev/null +++ b/cover.ms @@ -0,0 +1,17 @@ +.LT +.LP +Dear Alén Space, +.PP +I am looking for new professional challenges related to embedded systems, firmware development and digital design. I've been working with computers since 2011, after building my first AM radio, pulled by an interest in electronics and learning how to program microcontrollers and chips. +.PP +My interest in the lower-level aspects of computing pushed me to use and study many operating systems such as Plan 9, Inferno, Oberon, Linux, and the BSDs. I enjoy learning about the ideas and abstractions used to implement these kinds of programs; which are usually very well documented and represent a good source of well-written code, giving you a glimpse of how some of the best programmers express themselves while dealing with complexity and chaos. +.PP +Over the years I've been exposed to more programming languages than I can remember: C, Prolog, Go, C++, Python, Assembly (x86, ARM, AVR and 6502), Erlang, to name a few. I'm very open-minded regarding languages and paradigms, and I'd be willing to learn or create new ones for the given task. Language has the power to modify our reality, and some hard, complex problems can become really simple when looked at from a different perspective. +.PP +I love the natural sciences, and I can turn papers into code. Part of my programs reflect that, for instance I wrote a bird flock simulator based on Craig Reynold's publication from 1987, using a OODA loop. I've written very basic, concurrent dynamics simulators with multiple kinds of numerical integrators. I used one of them recently to implement the physics in a multi-user online game. +.PP +More recently, I've been meaning to learn more about digital design with Verilog, and since I discovered Forth, I want to implement the J1 CPU—plus peripherals— in one of my FPGAs at some point. +.PP +I'm very passionate about the Space Age and I would be very excited to join your team and contribute to your mission. I look forward to hearing back from you, have a great day! +.SG +Rodrigo González López diff --git a/cover.pdf b/cover.pdf new file mode 100644 index 0000000..f503312 Binary files /dev/null and b/cover.pdf differ diff --git a/cover.ps b/cover.ps new file mode 100644 index 0000000..6a50d02 --- /dev/null +++ b/cover.ps @@ -0,0 +1,899 @@ +%!PS-Adobe-2.0 +%%Version: 0.1 +%%Creator: troff, Plan 9 edition +%%DocumentFonts: (atend) +%%Pages: (atend) +%%EndComments +% +% Version 3.3.2 prologue for troff files. +% + +/#copies 1 store +/aspectratio 1 def +/formsperpage 1 def +/landscape false def +/linewidth .3 def +/magnification 1 def +/margin 0 def +/orientation 0 def +/resolution 720 def +/rotation 1 def +/xoffset 0 def +/yoffset 0 def + +/roundpage true def +/useclippath true def +/pagebbox [0 0 612 792] def + +/R /Times-Roman def +/I /Times-Italic def +/B /Times-Bold def +/BI /Times-BoldItalic def +/H /Helvetica def +/HI /Helvetica-Oblique def +/HB /Helvetica-Bold def +/HX /Helvetica-BoldOblique def +/CW /Courier def +/CO /Courier def +/CI /Courier-Oblique def +/CB /Courier-Bold def +/CX /Courier-BoldOblique def +/PA /Palatino-Roman def +/PI /Palatino-Italic def +/PB /Palatino-Bold def +/PX /Palatino-BoldItalic def +/Hr /Helvetica-Narrow def +/Hi /Helvetica-Narrow-Oblique def +/Hb /Helvetica-Narrow-Bold def +/Hx /Helvetica-Narrow-BoldOblique def +/KR /Bookman-Light def +/KI /Bookman-LightItalic def +/KB /Bookman-Demi def +/KX /Bookman-DemiItalic def +/AR /AvantGarde-Book def +/AI /AvantGarde-BookOblique def +/AB /AvantGarde-Demi def +/AX /AvantGarde-DemiOblique def +/NR /NewCenturySchlbk-Roman def +/NI /NewCenturySchlbk-Italic def +/NB /NewCenturySchlbk-Bold def +/NX /NewCenturySchlbk-BoldItalic def +/ZD /ZapfDingbats def +/ZI /ZapfChancery-MediumItalic def +/S /S def +/S1 /S1 def +/GR /Symbol def + +/inch {72 mul} bind def +/min {2 copy gt {exch} if pop} bind def + +/setup { + counttomark 2 idiv {def} repeat pop + + landscape {/orientation 90 orientation add def} if + /scaling 72 resolution div def + linewidth setlinewidth + 1 setlinecap + + pagedimensions + xcenter ycenter translate + orientation rotation mul rotate + width 2 div neg height 2 div translate + xoffset inch yoffset inch neg translate + margin 2 div dup neg translate + magnification dup aspectratio mul scale + scaling scaling scale + + addmetrics + 0 0 moveto +} def + +/pagedimensions { + useclippath userdict /gotpagebbox known not and { + /pagebbox [clippath pathbbox newpath] def + roundpage currentdict /roundpagebbox known and {roundpagebbox} if + } if + pagebbox aload pop + 4 -1 roll exch 4 1 roll 4 copy + landscape {4 2 roll} if + sub /width exch def + sub /height exch def + add 2 div /xcenter exch def + add 2 div /ycenter exch def + userdict /gotpagebbox true put +} def + +/addmetrics { + /Symbol /S null Sdefs cf + /Times-Roman /S1 StandardEncoding dup length array copy S1defs cf +} def + +/pagesetup { + /page exch def + currentdict /pagedict known currentdict page known and { + page load pagedict exch get cvx exec + } if +} def + +/decodingdefs [ + {counttomark 2 idiv {y moveto show} repeat} + {neg /y exch def counttomark 2 idiv {y moveto show} repeat} + {neg moveto {2 index stringwidth pop sub exch div 0 32 4 -1 roll widthshow} repeat} + {neg moveto {spacewidth sub 0.0 32 4 -1 roll widthshow} repeat} + {counttomark 2 idiv {y moveto show} repeat} + {neg setfunnytext} +] def + +/setdecoding {/t decodingdefs 3 -1 roll get bind def} bind def + +/w {neg moveto show} bind def +/m {neg dup /y exch def moveto} bind def +/done {/lastpage where {pop lastpage} if} def + +/f { + dup /font exch def findfont exch + dup /ptsize exch def scaling div dup /size exch def scalefont setfont + linewidth ptsize mul scaling 10 mul div setlinewidth + /spacewidth ( ) stringwidth pop def +} bind def + +/changefont { + /fontheight exch def + /fontslant exch def + currentfont [ + 1 0 + fontheight ptsize div fontslant sin mul fontslant cos div + fontheight ptsize div + 0 0 + ] makefont setfont +} bind def + +/sf {f} bind def + +/cf { + dup length 2 idiv + /entries exch def + /chtab exch def + /newencoding exch def + /newfont exch def + + findfont dup length 1 add dict + /newdict exch def + {1 index /FID ne {newdict 3 1 roll put}{pop pop} ifelse} forall + + newencoding type /arraytype eq {newdict /Encoding newencoding put} if + + newdict /Metrics entries dict put + newdict /Metrics get + begin + chtab aload pop + 1 1 entries {pop def} for + newfont newdict definefont pop + end +} bind def + +% +% A few arrays used to adjust reference points and character widths in some +% of the printer resident fonts. If square roots are too high try changing +% the lines describing /radical and /radicalex to, +% +% /radical [0 -75 550 0] +% /radicalex [-50 -75 500 0] +% +% Move braceleftbt a bit - default PostScript character is off a bit. +% + +/Sdefs [ + /bracketlefttp [201 500] + /bracketleftbt [201 500] + /bracketrighttp [-81 380] + /bracketrightbt [-83 380] + /braceleftbt [203 490] + /bracketrightex [220 -125 500 0] + /radical [0 0 550 0] + /radicalex [-50 0 500 1] + /parenleftex [-20 -170 0 0] + /integral [100 -50 500 0] + /infinity [10 -75 730 0] +] def + +/S1defs [ + /underscore [0 80 500 0] + /endash [7 90 650 0] +] def +% +% Tries to round clipping path dimensions, as stored in array pagebbox, so they +% match one of the known sizes in the papersizes array. Lower left coordinates +% are always set to 0. +% + +/roundpagebbox { + 7 dict begin + /papersizes [8.5 inch 11 inch 14 inch 17 inch] def + + /mappapersize { + /val exch def + /slop .5 inch def + /diff slop def + /j 0 def + 0 1 papersizes length 1 sub { + /i exch def + papersizes i get val sub abs + dup diff le {/diff exch def /j i def} {pop} ifelse + } for + diff slop lt {papersizes j get} {val} ifelse + } def + + pagebbox 0 0 put + pagebbox 1 0 put + pagebbox dup 2 get mappapersize 2 exch put + pagebbox dup 3 get mappapersize 3 exch put + end +} bind def + +%%EndProlog +%%BeginSetup +mark +% +% Encoding vector and redefinition of findfont for the ISO Latin1 standard. +% The 18 characters missing from ROM based fonts on older printers are noted +% below. +% + +/ISOLatin1Encoding [ + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /space + /exclam + /quotedbl + /numbersign + /dollar + /percent + /ampersand + /quoteright + /parenleft + /parenright + /asterisk + /plus + /comma + /minus + /period + /slash + /zero + /one + /two + /three + /four + /five + /six + /seven + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question + /at + /A + /B + /C + /D + /E + /F + /G + /H + /I + /J + /K + /L + /M + /N + /O + /P + /Q + /R + /S + /T + /U + /V + /W + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /asciicircum + /underscore + /quoteleft + /a + /b + /c + /d + /e + /f + /g + /h + /i + /j + /k + /l + /m + /n + /o + /p + /q + /r + /s + /t + /u + /v + /w + /x + /y + /z + /braceleft + /bar + /braceright + /asciitilde + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /dotlessi + /grave + /acute + /circumflex + /tilde + /macron + /breve + /dotaccent + /dieresis + /.notdef + /ring + /cedilla + /.notdef + /hungarumlaut + /ogonek + /caron + /space + /exclamdown + /cent + /sterling + /currency + /yen + /brokenbar % missing + /section + /dieresis + /copyright + /ordfeminine + /guillemotleft + /logicalnot + /hyphen + /registered + /macron + /degree % missing + /plusminus % missing + /twosuperior % missing + /threesuperior % missing + /acute + /mu % missing + /paragraph + /periodcentered + /cedilla + /onesuperior % missing + /ordmasculine + /guillemotright + /onequarter % missing + /onehalf % missing + /threequarters % missing + /questiondown + /Agrave + /Aacute + /Acircumflex + /Atilde + /Adieresis + /Aring + /AE + /Ccedilla + /Egrave + /Eacute + /Ecircumflex + /Edieresis + /Igrave + /Iacute + /Icircumflex + /Idieresis + /Eth % missing + /Ntilde + /Ograve + /Oacute + /Ocircumflex + /Otilde + /Odieresis + /multiply % missing + /Oslash + /Ugrave + /Uacute + /Ucircumflex + /Udieresis + /Yacute % missing + /Thorn % missing + /germandbls + /agrave + /aacute + /acircumflex + /atilde + /adieresis + /aring + /ae + /ccedilla + /egrave + /eacute + /ecircumflex + /edieresis + /igrave + /iacute + /icircumflex + /idieresis + /eth % missing + /ntilde + /ograve + /oacute + /ocircumflex + /otilde + /odieresis + /divide % missing + /oslash + /ugrave + /uacute + /ucircumflex + /udieresis + /yacute % missing + /thorn % missing + /ydieresis +] def + +/NewFontDirectory FontDirectory maxlength dict def + +% +% Apparently no guarantee findfont is defined in systemdict so the obvious +% +% systemdict /findfont get exec +% +% can generate an error. So far the only exception is a VT600 (version 48.0). +% + +userdict /@RealFindfont known not { + userdict begin + /@RealFindfont systemdict begin /findfont load end def + end +} if + +/findfont { + dup NewFontDirectory exch known not { + dup + %dup systemdict /findfont get exec % not always in systemdict + dup userdict /@RealFindfont get exec + dup /Encoding get StandardEncoding eq { + dup length dict begin + {1 index /FID ne {def}{pop pop} ifelse} forall + /Encoding ISOLatin1Encoding def + currentdict + end + /DummyFontName exch definefont + } if + NewFontDirectory 3 1 roll put + } if + NewFontDirectory exch get +} bind def + +%%Patch from lp +%%EndPatch from lp + +setup +%%EndSetup +%%Page: 1 1 +/saveobj save def +mark +1 pagesetup +10 /LucidaSansUnicode00 f +(June 2, 2022) 3456 1884 w +(Dear Al\351n Space,) 936 2400 w +(I) 1186 2556 w +(am) 1286 2556 w +(looking) 1505 2556 w +(for) 1938 2556 w +(new) 2149 2556 w +(professional) 2416 2556 w +(challenges) 3084 2556 w +(related) 3669 2556 w +(to) 4078 2556 w +(embedded) 4248 2556 w +(systems,) 4833 2556 w +(firmware) 936 2676 w +(development) 1400 2676 w +(and) 2062 2676 w +(digital) 2276 2676 w +(design.) 2614 2676 w +(I) 3003 2676 w +10 /LucidaSansUnicode20 f +(\031) 3032 2676 w +10 /LucidaSansUnicode00 f +(ve) 3064 2676 w +(been) 3206 2676 w +(working) 3477 2676 w +(with) 3901 2676 w +(computers) 4140 2676 w +(since) 4689 2676 w +(2011,) 4972 2676 w +(after) 936 2796 w +(building) 1197 2796 w +(my) 1631 2796 w +(first) 1811 2796 w +(AM) 2041 2796 w +(radio,) 2231 2796 w +(pulled) 2547 2796 w +(by) 2884 2796 w +(an) 3034 2796 w +(interest) 3186 2796 w +(in) 3590 2796 w +(electronics) 3716 2796 w +(and) 4275 2796 w +(learning) 4490 2796 w +(how) 4922 2796 w +(to) 5158 2796 w +(program microcontrollers and chips.) 936 2916 w +(My) 1186 3072 w +(interest) 1368 3072 w +(in) 1781 3072 w +(the) 1916 3072 w +(lower-level) 2115 3072 w +(aspects) 2703 3072 w +(of) 3111 3072 w +(computing) 3253 3072 w +(pushed) 3817 3072 w +(me) 4218 3072 w +(to) 4411 3072 w +(use) 4553 3072 w +(and) 4766 3072 w +(study) 4991 3072 w +(many) 936 3192 w +(operating) 1242 3192 w +(systems) 1752 3192 w +(such) 2187 3192 w +(as) 2457 3192 w +(Plan) 2606 3192 w +(9,) 2850 3192 w +(Inferno,) 2988 3192 w +(Oberon,) 3411 3192 w +(Linux,) 3847 3192 w +(and) 4189 3192 w +(the) 4412 3192 w +(BSDs.) 4610 3192 w +(I) 4923 3192 w +(enjoy) 4995 3192 w +(learning) 936 3312 w +(about) 1373 3312 w +(the) 1692 3312 w +(ideas) 1888 3312 w +(and) 2183 3312 w +(abstractions) 2404 3312 w +(used) 3038 3312 w +(to) 3311 3312 w +(implement) 3450 3312 w +(these) 4009 3312 w +(kinds) 4312 3312 w +(of) 4617 3312 w +(programs;) 4757 3312 w +(which) 936 3432 w +(are) 1267 3432 w +(usually) 1469 3432 w +(very) 1859 3432 w +(well) 2110 3432 w +(documented) 2351 3432 w +(and) 3005 3432 w +(represent) 3235 3432 w +(a) 3748 3432 w +(good) 3853 3432 w +(source) 4150 3432 w +(of) 4521 3432 w +(well-written) 4668 3432 w +(code,) 936 3552 w +(giving) 1241 3552 w +(you) 1579 3552 w +(a) 1796 3552 w +(glimpse) 1893 3552 w +(of) 2318 3552 w +(how) 2458 3552 w +(some) 2700 3552 w +(of) 3003 3552 w +(the) 3143 3552 w +(best) 3341 3552 w +(programmers) 3591 3552 w +(express) 4291 3552 w +(themselves) 4713 3552 w +(while dealing with complexity and chaos.) 936 3672 w +(Over) 1186 3828 w +(the) 1471 3828 w +(years) 1684 3828 w +(I) 1997 3828 w +10 /LucidaSansUnicode20 f +(\031) 2026 3828 w +10 /LucidaSansUnicode00 f +(ve) 2058 3828 w +(been) 2224 3828 w +(exposed) 2519 3828 w +(to) 2988 3828 w +(more) 3144 3828 w +(programming) 3453 3828 w +(languages) 4173 3828 w +(than) 4725 3828 w +(I) 5000 3828 w +(can) 5088 3828 w +(remember:) 936 3948 w +(C,) 1503 3948 w +(Prolog,) 1640 3948 w +(Go,) 2017 3948 w +(C++,) 2218 3948 w +(Python,) 2515 3948 w +(Assembly) 2912 3948 w +(\(x86,) 3412 3948 w +(ARM,) 3700 3948 w +(AVR) 3986 3948 w +(and) 4219 3948 w +(6502\),) 4435 3948 w +(Erlang,) 4788 3948 w +(to) 5158 3948 w +(name) 936 4068 w +(a) 1237 4068 w +(few.) 1328 4068 w +(I) 1566 4068 w +10 /LucidaSansUnicode20 f +(\031) 1595 4068 w +10 /LucidaSansUnicode00 f +(m) 1627 4068 w +(very) 1756 4068 w +(open-minded) 1993 4068 w +(regarding) 2695 4068 w +(languages) 3202 4068 w +(and) 3732 4068 w +(paradigms,) 3948 4068 w +(and) 4528 4068 w +(I) 4744 4068 w +10 /LucidaSansUnicode20 f +(\031) 4773 4068 w +10 /LucidaSansUnicode00 f +(d) 4805 4068 w +(be) 4904 4068 w +(will\255) 5059 4068 w +(ing) 936 4188 w +(to) 1133 4188 w +(learn) 1275 4188 w +(or) 1562 4188 w +(create) 1708 4188 w +(new) 2048 4188 w +(ones) 2287 4188 w +(for) 2560 4188 w +(the) 2742 4188 w +(given) 2940 4188 w +(task.) 3244 4188 w +(Language) 3520 4188 w +(has) 4030 4188 w +(the) 4241 4188 w +(power) 4439 4188 w +(to) 4780 4188 w +(modify) 4921 4188 w +(our) 936 4308 w +(reality,) 1134 4308 w +(and) 1499 4308 w +(some) 1713 4308 w +(hard,) 2009 4308 w +(complex) 2297 4308 w +(problems) 2746 4308 w +(can) 3238 4308 w +(become) 3441 4308 w +(really) 3856 4308 w +(simple) 4153 4308 w +(when) 4509 4308 w +(looked) 4801 4308 w +(at) 5164 4308 w +(from a different perspective.) 936 4428 w +(I) 1186 4584 w +(love) 1258 4584 w +(the) 1499 4584 w +(natural) 1697 4584 w +(sciences,) 2081 4584 w +(and) 2563 4584 w +(I) 2786 4584 w +(can) 2858 4584 w +(turn) 3069 4584 w +(papers) 3314 4584 w +(into) 3686 4584 w +(code.) 3919 4584 w +(Part) 4226 4584 w +(of) 4458 4584 w +(my) 4600 4584 w +(programs) 4789 4584 w +(reflect) 936 4704 w +(that,) 1278 4704 w +(for) 1536 4704 w +(instance) 1710 4704 w +(I) 2148 4704 w +(wrote) 2212 4704 w +(a) 2518 4704 w +(bird) 2607 4704 w +(flock) 2837 4704 w +(simulator) 3107 4704 w +(based) 3599 4704 w +(on) 3921 4704 w +(Craig) 4078 4704 w +(Reynold) 4368 4704 w +10 /LucidaSansUnicode20 f +(\031) 4754 4704 w +10 /LucidaSansUnicode00 f +(s) 4786 4704 w +(publica\255) 4871 4704 w +(tion from 1987, using) 936 4824 w +(a) 2036 4824 w +(OODA) 2124 4824 w +(loop.) 2457 4824 w +(I) 2736 4824 w +10 /LucidaSansUnicode20 f +(\031) 2765 4824 w +10 /LucidaSansUnicode00 f +(ve) 2797 4824 w +(written) 2938 4824 w +(very) 3310 4824 w +(basic,) 3544 4824 w +(concurrent) 3858 4824 w +(dynamics) 4415 4824 w +(simula\255) 4904 4824 w +(tors) 936 4944 w +(with) 1166 4944 w +(multiple) 1411 4944 w +(kinds) 1849 4944 w +(of) 2152 4944 w +(numerical) 2290 4944 w +(integrators.) 2808 4944 w +(I) 3412 4944 w +(used) 3480 4944 w +(one) 3751 4944 w +(of) 3969 4944 w +(them) 4106 4944 w +(recently) 4393 4944 w +(to) 4816 4944 w +(imple\255) 4953 4944 w +(ment the physics in a multi-user online game.) 936 5064 w +(More) 1186 5220 w +(recently,) 1472 5220 w +(I) 1930 5220 w +10 /LucidaSansUnicode20 f +(\031) 1959 5220 w +10 /LucidaSansUnicode00 f +(ve) 1991 5220 w +(been) 2141 5220 w +(meaning) 2420 5220 w +(to) 2881 5220 w +(learn) 3021 5220 w +(more) 3306 5220 w +(about) 3599 5220 w +(digital) 3920 5220 w +(design) 4267 5220 w +(with) 4633 5220 w +(Verilog,) 4881 5220 w +(and) 936 5340 w +(since) 1153 5340 w +(I) 1439 5340 w +(discovered) 1505 5340 w +(Forth,) 2065 5340 w +(I) 2389 5340 w +(want) 2455 5340 w +(to) 2723 5340 w +(implement) 2858 5340 w +(the) 3413 5340 w +(J1) 3604 5340 w +(CPU) 3734 5340 w +10 /LucidaSansUnicode20 f +(\024) 3927 5340 w +10 /LucidaSansUnicode00 f +(plus) 4027 5340 w +(peripherals) 4268 5340 w +10 /LucidaSansUnicode20 f +(\024) 4814 5340 w +10 /LucidaSansUnicode00 f +(in) 4950 5340 w +(one) 5077 5340 w +(of my FPGAs at some point.) 936 5460 w +(I) 1186 5616 w +10 /LucidaSansUnicode20 f +(\031) 1215 5616 w +10 /LucidaSansUnicode00 f +(m) 1247 5616 w +(very) 1381 5616 w +(passionate) 1623 5616 w +(about) 2184 5616 w +(the) 2503 5616 w +(Space) 2700 5616 w +(Age) 3021 5616 w +(and) 3250 5616 w +(I) 3472 5616 w +(would) 3543 5616 w +(be) 3877 5616 w +(very) 4038 5616 w +(excited) 4281 5616 w +(to) 4676 5616 w +(join) 4816 5616 w +(your) 5040 5616 w +(team) 936 5736 w +(and) 1221 5736 w +(contribute) 1445 5736 w +(to) 1988 5736 w +(your) 2130 5736 w +(mission.) 2390 5736 w +(I) 2842 5736 w +(look) 2915 5736 w +(forward) 3168 5736 w +(to) 3587 5736 w +(hearing) 3728 5736 w +(back) 4138 5736 w +(from) 4408 5736 w +(you,) 4683 5736 w +(have) 4933 5736 w +(a) 5201 5736 w +(great day!) 936 5856 w +(Sincerely,) 3456 6216 w +(Rodrigo Gonz\341lez L\363pez) 3488 6696 w +cleartomark +showpage +saveobj restore +%%EndPage: 1 1 +%%Trailer +done +%%DocumentFonts: LucidaSansUnicode20 LucidaSansUnicode00 +%%Pages: 1 diff --git a/cv.pdf b/cv.pdf index a2732f1..65b48f3 100644 Binary files a/cv.pdf and b/cv.pdf differ diff --git a/cv.ps b/cv.ps index 618699f..ef2fe8b 100644 --- a/cv.ps +++ b/cv.ps @@ -5531,7 +5531,7 @@ mark 8 /LucidaTypewriter f (https://www.linkedin.com/in/rodrigo-g-l\363pez-178744178/) 1440 4505 w 10 /LucidaSans-Demi f -(Languages) 752 4745 w +(Languages) 720 4745 w 10 /LucidaSansUnicode20 f (") 720 4901 w 10 /LucidaSansUnicode00 f @@ -5567,83 +5567,88 @@ mark 10 /LucidaSansUnicode20 f (") 720 5693 w 10 /LucidaSansUnicode00 f -(Computer) 820 5693 w -(programmer) 1337 5693 w -(and) 1978 5693 w -(Sysadmin) 2193 5693 w -(at) 2687 5693 w +(Computer programmer and Sysadmin at) 820 5693 w 10 /LucidaSans-Italic f -(Telfy) 2814 5693 w -(Telecom) 3086 5693 w -(S.L.U.) 3518 5693 w +(Telfy Telecom S.L.U.) 2799 5693 w 10 /LucidaSansUnicode00 f -(from) 3860 5693 w -(December) 4127 5693 w -(2019) 4654 5693 w -(to) 4942 5693 w -(the present.) 820 5813 w -(-) 720 5969 w -(MySQL) 970 5969 w -(performance) 1331 5969 w -(tuning,) 1985 5969 w -(including) 2369 5969 w -(filesystem) 2856 5969 w -(\(ext2,) 3385 5969 w -(ext4,) 3705 5969 w -(xfs\)) 3992 5969 w -(and) 4213 5969 w -(Linux) 4432 5969 w -(kernel) 4738 5969 w -(benchmarking.) 970 6089 w -(-) 720 6245 w -(On-line hard drive resizing with LVM in VirtualBox, QEMU and oVirt VMs.) 970 6245 w -(-) 720 6401 w -(Created a centralized rsyslog setup for multiple machines through a UDP transport.) 970 6401 w -(-) 720 6557 w -(Implemented) 970 6557 w -(a) 1640 6557 w -(service) 1728 6557 w -(to) 2097 6557 w -(safely) 2228 6557 w -(truncate) 2541 6557 w -(logs) 2975 6557 w -(whenever) 3211 6557 w -(they) 3706 6557 w -(reached) 3946 6557 w -(a) 4363 6557 w -(certain) 4451 6557 w -(size,) 4815 6557 w -(using C and the inotify\(7\) API.) 970 6677 w -(-) 720 6833 w -(Installed) 970 6833 w -(and) 1421 6833 w -(configured) 1641 6833 w -(an) 2205 6833 w -(Asterisk) 2362 6833 w -(11) 2794 6833 w -(PBX) 2960 6833 w -(with) 3176 6833 w -(enough) 3421 6833 w -(functionality) 3826 6833 w -(to) 4470 6833 w -(allow) 4609 6833 w -(for) 4901 6833 w -(two SIP lines to talk to each other.) 970 6953 w -(-) 720 7109 w -(Installed oVirt 3.6 and 4.x with a hosted engine for NFS and iSCSI benchmarking.) 970 7109 w -(-) 720 7265 w -(Created) 970 7265 w -(web) 1390 7265 w -(applications) 1630 7265 w -(with) 2259 7265 w -(JS,) 2508 7265 w -(PHP,) 2669 7265 w -(PostgreSQL) 2929 7265 w -(and) 3521 7265 w -(Python) 3745 7265 w -(to) 4118 7265 w -(provide) 4260 7265 w -(internal) 4669 7265 w +(since December 2019.) 3836 5693 w +(-) 720 5849 w +(MySQL) 970 5849 w +(performance) 1331 5849 w +(tuning,) 1985 5849 w +(including) 2369 5849 w +(filesystem) 2856 5849 w +(\(ext2,) 3385 5849 w +(ext4,) 3705 5849 w +(xfs\)) 3992 5849 w +(and) 4213 5849 w +(Linux) 4432 5849 w +(kernel) 4738 5849 w +(benchmarking.) 970 5969 w +(-) 720 6125 w +(On-line hard drive resizing with LVM in VirtualBox, QEMU and oVirt VMs.) 970 6125 w +(-) 720 6281 w +(Created a centralized rsyslog setup for multiple machines through a UDP transport.) 970 6281 w +(-) 720 6437 w +(Implemented) 970 6437 w +(a) 1640 6437 w +(service) 1728 6437 w +(to) 2097 6437 w +(safely) 2228 6437 w +(truncate) 2541 6437 w +(logs) 2975 6437 w +(whenever) 3211 6437 w +(they) 3706 6437 w +(reached) 3946 6437 w +(a) 4363 6437 w +(certain) 4451 6437 w +(size,) 4815 6437 w +(using C and the inotify\(7\) API.) 970 6557 w +(-) 720 6713 w +(Installed) 970 6713 w +(and) 1421 6713 w +(configured) 1641 6713 w +(an) 2205 6713 w +(Asterisk) 2362 6713 w +(11) 2794 6713 w +(PBX) 2960 6713 w +(with) 3176 6713 w +(enough) 3421 6713 w +(functionality) 3826 6713 w +(to) 4470 6713 w +(allow) 4609 6713 w +(for) 4901 6713 w +(two SIP lines to talk to each other.) 970 6833 w +(-) 720 6989 w +(Installed oVirt 3.6 and 4.x with a hosted engine for NFS and iSCSI benchmarking.) 970 6989 w +(-) 720 7145 w +(Created) 970 7145 w +(web) 1390 7145 w +(applications) 1630 7145 w +(with) 2259 7145 w +(JS,) 2508 7145 w +(PHP,) 2669 7145 w +(PostgreSQL) 2929 7145 w +(and) 3521 7145 w +(Python) 3745 7145 w +(to) 4118 7145 w +(provide) 4260 7145 w +(internal) 4669 7145 w +(services) 970 7265 w +(for) 1404 7265 w +(the) 1590 7265 w +(FTTH) 1792 7265 w +(Dept.) 2093 7265 w +(like) 2435 7265 w +(technicians) 2654 7265 w +10 /LucidaSansUnicode20 f +(\031) 3199 7265 w +10 /LucidaSansUnicode00 f +(s) 3231 7265 w +(work) 3328 7265 w +(report) 3611 7265 w +(registration,) 3956 7265 w +(antennae) 4595 7265 w (February 2022 ) 2478 7680 w cleartomark showpage @@ -5655,636 +5660,644 @@ mark 2 pagesetup 10 /LucidaSansUnicode00 f (\255 2 \255) 2783 480 w -(services) 970 840 w -(for) 1404 840 w -(the) 1590 840 w -(FTTH) 1792 840 w -(Dept.) 2093 840 w -(like) 2435 840 w -(technicians) 2654 840 w -10 /LucidaSansUnicode20 f -(\031) 3199 840 w -10 /LucidaSansUnicode00 f -(s) 3231 840 w -(work) 3328 840 w -(report) 3611 840 w -(registration,) 3956 840 w -(antennae) 4595 840 w -(maintenance) 970 960 w -(notifications,) 1653 960 w -(fiber) 2351 960 w -(optics) 2642 960 w -(coverage) 2999 960 w -(queries) 3498 960 w -(issued) 3921 960 w -(by) 4298 960 w -(clients) 4479 960 w -(and) 4860 960 w -(custom-format labels for network segments and distribution boxes.) 970 1080 w -(-) 720 1236 w -(Set) 970 1236 w -(up) 1161 1236 w -(the) 1330 1236 w -(services) 1529 1236 w -(to) 1960 1236 w -(provide) 2102 1236 w -(IPv6) 2511 1236 w -(connectivity) 2754 1236 w -(to) 3377 1236 w -(all) 3519 1236 w -(our) 3676 1236 w -(clients,) 3884 1236 w -(using) 4275 1236 w -(ISC) 4585 1236 w +(maintenance) 970 840 w +(notifications,) 1653 840 w +(fiber) 2351 840 w +(optics) 2642 840 w +(coverage) 2999 840 w +(queries) 3498 840 w +(issued) 3921 840 w +(by) 4298 840 w +(clients) 4479 840 w +(and) 4860 840 w +(custom-format labels for network segments and distribution boxes.) 970 960 w +(-) 720 1116 w +(Set) 970 1116 w +(up) 1161 1116 w +(the) 1330 1116 w +(services) 1529 1116 w +(to) 1960 1116 w +(provide) 2102 1116 w +(IPv6) 2511 1116 w +(connectivity) 2754 1116 w +(to) 3377 1116 w +(all) 3519 1116 w +(our) 3676 1116 w +(clients,) 3884 1116 w +(using) 4275 1116 w +(ISC) 4585 1116 w 10 /LucidaSansUnicode20 f -(\031) 4737 1236 w +(\031) 4737 1116 w 10 /LucidaSansUnicode00 f -(s) 4769 1236 w -(Kea) 4864 1236 w -(and) 970 1356 w -(its) 1186 1356 w -(API) 1339 1356 w -(through) 1528 1356 w -(custom) 1951 1356 w -(Python) 2342 1356 w -(scripts) 2707 1356 w -(to) 3066 1356 w -(manage) 3200 1356 w -(leases) 3619 1356 w -(and) 3953 1356 w -(host) 4169 1356 w -(reservations,) 4416 1356 w -(along) 970 1476 w -(with) 1283 1476 w -(a) 1533 1476 w -(DDNS) 1633 1476 w -(service) 1956 1476 w -(to) 2337 1476 w -(sync) 2480 1476 w -(against) 2741 1476 w -(an) 3137 1476 w -(internal) 3299 1476 w -(BIND) 3715 1476 w -(instance.) 3996 1476 w -(I) 4508 1476 w -(also) 4582 1476 w -(inte\255) 4823 1476 w -(grated) 970 1596 w -(the) 1327 1596 w -(new) 1525 1596 w -(functionality) 1763 1596 w -(with) 2408 1596 w -(our) 2655 1596 w -(internal) 2861 1596 w -(ACS,) 3274 1596 w -(used) 3540 1596 w -(to) 3814 1596 w -(provision) 3954 1596 w -(the) 4445 1596 w -(clients) 4642 1596 w +(s) 4769 1116 w +(Kea) 4864 1116 w +(and) 970 1236 w +(its) 1186 1236 w +(API) 1339 1236 w +(through) 1528 1236 w +(custom) 1951 1236 w +(Python) 2342 1236 w +(scripts) 2707 1236 w +(to) 3066 1236 w +(manage) 3200 1236 w +(leases) 3619 1236 w +(and) 3953 1236 w +(host) 4169 1236 w +(reservations,) 4416 1236 w +(along) 970 1356 w +(with) 1283 1356 w +(a) 1533 1356 w +(DDNS) 1633 1356 w +(service) 1956 1356 w +(to) 2337 1356 w +(sync) 2480 1356 w +(against) 2741 1356 w +(an) 3137 1356 w +(internal) 3299 1356 w +(BIND) 3715 1356 w +(instance.) 3996 1356 w +(I) 4508 1356 w +(also) 4582 1356 w +(inte\255) 4823 1356 w +(grated) 970 1476 w +(the) 1327 1476 w +(new) 1525 1476 w +(functionality) 1763 1476 w +(with) 2408 1476 w +(our) 2655 1476 w +(internal) 2861 1476 w +(ACS,) 3274 1476 w +(used) 3540 1476 w +(to) 3814 1476 w +(provision) 3954 1476 w +(the) 4445 1476 w +(clients) 4642 1476 w 10 /LucidaSansUnicode20 f -(\031) 4957 1596 w +(\031) 4957 1476 w 10 /LucidaSansUnicode00 f -(s) 4989 1596 w -(CPE/ONT.) 970 1716 w -(-) 720 1872 w -(Helped) 970 1872 w -(colleagues) 1352 1872 w -(from) 1905 1872 w -(the) 2178 1872 w -(Technical) 2374 1872 w -(Support) 2873 1872 w -(and) 3295 1872 w -(Systems) 3516 1872 w -(departments) 3951 1872 w -(with) 4606 1872 w -(sys\255) 4853 1872 w -(tem) 970 1992 w -(administration,) 1204 1992 w -(data) 1988 1992 w -(processing,) 2246 1992 w -(automation) 2852 1992 w -(and) 3451 1992 w -(networking) 3678 1992 w -(tasks) 4270 1992 w -(regarding) 4569 1992 w -(Linux.) 970 2112 w -(-) 720 2268 w -(Worked) 970 2268 w -(on) 1373 2268 w -(the) 1534 2268 w -(migration) 1727 2268 w -(of) 2235 2268 w -(a) 2372 2268 w -(monolithic) 2466 2268 w -(web) 3019 2268 w -(platform) 3254 2268 w -(into) 3709 2268 w -(a) 3937 2268 w -(set) 4031 2268 w -(of) 4214 2268 w -(REST) 4351 2268 w -(web) 4624 2268 w -(ser\255) 4859 2268 w -(vices) 970 2388 w -(using) 1246 2388 w -(PHP,) 1549 2388 w -(MySQL) 1802 2388 w -(and) 2162 2388 w -(MongoDB,) 2379 2388 w -(including) 2913 2388 w -(a) 3399 2388 w -(search) 3490 2388 w -(engine) 3842 2388 w -(where) 4205 2388 w -(I) 4533 2388 w -(designed) 4598 2388 w -(the) 970 2508 w -(Docker) 1161 2508 w -(container) 1539 2508 w -(infrastructure) 2030 2508 w -(for) 2729 2508 w -(its) 2905 2508 w -(development) 3059 2508 w -(along) 3724 2508 w -(with) 4030 2508 w -(the) 4272 2508 w -(CI/CD) 4464 2508 w -(pipe\255) 4796 2508 w -(line using Jenkins and Ansible playbooks.) 970 2628 w +(s) 4989 1476 w +(CPE/ONT.) 970 1596 w +(-) 720 1752 w +(Helped) 970 1752 w +(colleagues) 1352 1752 w +(from) 1905 1752 w +(the) 2178 1752 w +(Technical) 2374 1752 w +(Support) 2873 1752 w +(and) 3295 1752 w +(Systems) 3516 1752 w +(departments) 3951 1752 w +(with) 4606 1752 w +(sys\255) 4853 1752 w +(tem) 970 1872 w +(administration,) 1204 1872 w +(data) 1988 1872 w +(processing,) 2246 1872 w +(automation) 2852 1872 w +(and) 3451 1872 w +(networking) 3678 1872 w +(tasks) 4270 1872 w +(regarding) 4569 1872 w +(Linux.) 970 1992 w +(-) 720 2148 w +(Worked) 970 2148 w +(on) 1373 2148 w +(the) 1534 2148 w +(migration) 1727 2148 w +(of) 2235 2148 w +(a) 2372 2148 w +(monolithic) 2466 2148 w +(web) 3019 2148 w +(platform) 3254 2148 w +(into) 3709 2148 w +(a) 3937 2148 w +(set) 4031 2148 w +(of) 4214 2148 w +(REST) 4351 2148 w +(web) 4624 2148 w +(ser\255) 4859 2148 w +(vices) 970 2268 w +(using) 1246 2268 w +(PHP,) 1549 2268 w +(MySQL) 1802 2268 w +(and) 2162 2268 w +(MongoDB,) 2379 2268 w +(including) 2913 2268 w +(a) 3399 2268 w +(search) 3490 2268 w +(engine) 3842 2268 w +(where) 4205 2268 w +(I) 4533 2268 w +(designed) 4598 2268 w +(the) 970 2388 w +(Docker) 1161 2388 w +(container) 1539 2388 w +(infrastructure) 2030 2388 w +(for) 2729 2388 w +(its) 2905 2388 w +(development) 3059 2388 w +(along) 3724 2388 w +(with) 4030 2388 w +(the) 4272 2388 w +(CI/CD) 4464 2388 w +(pipe\255) 4796 2388 w +(line using Jenkins and Ansible playbooks.) 970 2508 w 10 /LucidaSansUnicode20 f -(") 720 2784 w +(") 720 2664 w 10 /LucidaSansUnicode00 f -(Programmer) 820 2784 w -(at) 1456 2784 w +(Programmer) 820 2664 w +(at) 1456 2664 w 10 /LucidaSans-Italic f -(everis) 1586 2784 w +(everis) 1586 2664 w 10 /LucidaSansUnicode00 f -(from) 1910 2784 w -(April) 2180 2784 w -(2017) 2449 2784 w -(to) 2739 2784 w -(August) 2875 2784 w -(2018.) 3256 2784 w -(I) 3610 2784 w -(worked) 3677 2784 w -(on) 4071 2784 w -(four) 4232 2784 w -(projects) 4472 2784 w -(for) 4901 2784 w -(a) 820 2904 w -(client) 908 2904 w -(in) 1205 2904 w -(the) 1329 2904 w -(energy) 1517 2904 w -(sector,) 1879 2904 w -(the first one using SAPUI5, two later using jQuery and the) 2241 2904 w -(last) 820 3024 w -(one) 1037 3024 w -(with) 1261 3024 w -(jQuery) 1511 3024 w -(and) 1876 3024 w -(Leaflet) 2102 3024 w -(to) 2471 3024 w -(build) 2615 3024 w -(an) 2907 3024 w -(internal) 3070 3024 w -(application) 3487 3024 w +(from) 1910 2664 w +(April) 2180 2664 w +(2017) 2449 2664 w +(to) 2739 2664 w +(August) 2875 2664 w +(2018.) 3256 2664 w +(I) 3610 2664 w +(worked) 3677 2664 w +(on) 4071 2664 w +(four) 4232 2664 w +(projects) 4472 2664 w +(for) 4901 2664 w +(a) 820 2784 w +(client) 908 2784 w +(in) 1205 2784 w +(the) 1329 2784 w +(energy) 1517 2784 w +(sector,) 1879 2784 w +(the first one using SAPUI5, two later using jQuery and the) 2241 2784 w +(last) 820 2904 w +(one) 1037 2904 w +(with) 1261 2904 w +(jQuery) 1511 2904 w +(and) 1876 2904 w +(Leaflet) 2102 2904 w +(to) 2471 2904 w +(build) 2615 2904 w +(an) 2907 2904 w +(internal) 3070 2904 w +(application) 3487 2904 w 10 /LucidaSansUnicode20 f -(\031) 4021 3024 w +(\031) 4021 2904 w 10 /LucidaSansUnicode00 f -(s) 4053 3024 w -(section) 4150 3024 w -(for) 4543 3024 w -(a) 4728 3024 w -(map) 4829 3024 w -(with) 820 3144 w -(some) 1066 3144 w -(range) 1368 3144 w -(filtering) 1684 3144 w -(and) 2106 3144 w -(trace) 2326 3144 w -(selection) 2606 3144 w -(functionality.) 3078 3144 w -(I) 3785 3144 w -(also) 3854 3144 w -(worked) 4090 3144 w -(with) 4486 3144 w -(a) 4731 3144 w -(test\255) 4826 3144 w -(ing) 820 3264 w -(team) 1035 3264 w -(on) 1338 3264 w -(a) 1524 3264 w -(project,) 1642 3264 w -(evaluating) 2076 3264 w -(several) 2638 3264 w -(formulary) 3041 3264 w -(windows,) 3575 3264 w -(fields,) 4090 3264 w -(layouts) 4450 3264 w -(and) 4860 3264 w -(parametrization.) 820 3384 w -(There) 1689 3384 w -(was) 2001 3384 w -(also) 2218 3384 w -(a) 2448 3384 w -(project) 2537 3384 w -(using) 2910 3384 w -(speech) 3210 3384 w -(recognition,) 3583 3384 w -(where) 4200 3384 w -(I) 4526 3384 w -(learned) 4589 3384 w -(a) 4985 3384 w -(bit about finite state grammars, language models and speech-to-text synthesis.) 820 3504 w +(s) 4053 2904 w +(section) 4150 2904 w +(for) 4543 2904 w +(a) 4728 2904 w +(map) 4829 2904 w +(with) 820 3024 w +(some) 1066 3024 w +(range) 1368 3024 w +(filtering) 1684 3024 w +(and) 2106 3024 w +(trace) 2326 3024 w +(selection) 2606 3024 w +(functionality.) 3078 3024 w +(I) 3785 3024 w +(also) 3854 3024 w +(worked) 4090 3024 w +(with) 4486 3024 w +(a) 4731 3024 w +(test\255) 4826 3024 w +(ing) 820 3144 w +(team) 1035 3144 w +(on) 1338 3144 w +(a) 1524 3144 w +(project,) 1642 3144 w +(evaluating) 2076 3144 w +(several) 2638 3144 w +(formulary) 3041 3144 w +(windows,) 3575 3144 w +(fields,) 4090 3144 w +(layouts) 4450 3144 w +(and) 4860 3144 w +(parametrization.) 820 3264 w +(There) 1689 3264 w +(was) 2001 3264 w +(also) 2218 3264 w +(a) 2448 3264 w +(project) 2537 3264 w +(using) 2910 3264 w +(speech) 3210 3264 w +(recognition,) 3583 3264 w +(where) 4200 3264 w +(I) 4526 3264 w +(learned) 4589 3264 w +(a) 4985 3264 w +(bit about finite state grammars, language models and speech-to-text synthesis.) 820 3384 w 10 /LucidaSansUnicode20 f -(") 720 3660 w +(") 720 3540 w 10 /LucidaSansUnicode00 f -(Technical) 820 3660 w -(support) 1316 3660 w -(at) 1732 3660 w +(Technical) 820 3540 w +(support) 1316 3540 w +(at) 1732 3540 w 10 /LucidaSans-Italic f -(SolidQ) 1862 3660 w +(SolidQ) 1862 3540 w 10 /LucidaSansUnicode00 f -(during) 2209 3660 w -(Spring) 2566 3660 w -(of) 2915 3660 w -(2016.) 3051 3660 w -(I) 3405 3660 w -(helped) 3472 3660 w -(customers) 3839 3660 w -(with) 4381 3660 w -(software) 4625 3660 w -(setup) 820 3780 w -(and) 1137 3780 w -(configuration,) 1365 3780 w -(and) 2094 3780 w -(also) 2322 3780 w -(worked) 2566 3780 w -(with) 2970 3780 w -(the) 3223 3780 w -(internal) 3426 3780 w -(support) 3845 3780 w -(team) 4271 3780 w -(to) 4559 3780 w -(update) 4704 3780 w -(documentation and manage clients) 820 3900 w +(during) 2209 3540 w +(Spring) 2566 3540 w +(of) 2915 3540 w +(2016.) 3051 3540 w +(I) 3405 3540 w +(helped) 3472 3540 w +(customers) 3839 3540 w +(with) 4381 3540 w +(software) 4625 3540 w +(setup) 820 3660 w +(and) 1137 3660 w +(configuration,) 1365 3660 w +(and) 2094 3660 w +(also) 2322 3660 w +(worked) 2566 3660 w +(with) 2970 3660 w +(the) 3223 3660 w +(internal) 3426 3660 w +(support) 3845 3660 w +(team) 4271 3660 w +(to) 4559 3660 w +(update) 4704 3660 w +(documentation and manage clients) 820 3780 w 10 /LucidaSansUnicode20 f -(\031) 2523 3900 w +(\031) 2523 3780 w 10 /LucidaSansUnicode00 f -(subscriptions.) 2587 3900 w +(subscriptions.) 2587 3780 w 10 /LucidaSansUnicode20 f -(") 720 4056 w +(") 720 3936 w 10 /LucidaSansUnicode00 f -(English-Spanish) 820 4056 w -(translator) 1647 4056 w -(at) 2160 4056 w +(English-Spanish) 820 3936 w +(translator) 1647 3936 w +(at) 2160 3936 w 10 /LucidaSans-Italic f -(Node.js) 2296 4056 w +(Node.js) 2296 3936 w 10 /LucidaSansUnicode00 f -(in) 2699 4056 w -(Spring) 2834 4056 w -(and) 3189 4056 w -(Summer) 3413 4056 w -(of) 3856 4056 w -(2015.) 3999 4056 w -(I) 4360 4056 w -(worked) 4434 4056 w -(with) 4835 4056 w -(the) 820 4176 w -(Node) 1018 4176 w -(spanish) 1315 4176 w -(community) 1731 4176 w -(to) 2314 4176 w -(translate) 2455 4176 w -(the) 2921 4176 w -(documents) 3119 4176 w -(of) 3698 4176 w -(every) 3838 4176 w -(version,) 4137 4176 w -(developer) 4563 4176 w -(publications and the API, along with examples for C++ and Javascript.) 820 4296 w +(in) 2699 3936 w +(Spring) 2834 3936 w +(and) 3189 3936 w +(Summer) 3413 3936 w +(of) 3856 3936 w +(2015.) 3999 3936 w +(I) 4360 3936 w +(worked) 4434 3936 w +(with) 4835 3936 w +(the) 820 4056 w +(Node) 1018 4056 w +(spanish) 1315 4056 w +(community) 1731 4056 w +(to) 2314 4056 w +(translate) 2455 4056 w +(the) 2921 4056 w +(documents) 3119 4056 w +(of) 3698 4056 w +(every) 3838 4056 w +(version,) 4137 4056 w +(developer) 4563 4056 w +(publications and the API, along with examples for C++ and Javascript.) 820 4176 w 10 /LucidaSansUnicode20 f -(") 720 4452 w +(") 720 4332 w 10 /LucidaSansUnicode00 f -(Backend) 820 4452 w -(Engineer) 1265 4452 w -(at) 1729 4452 w +(Backend) 820 4332 w +(Engineer) 1265 4332 w +(at) 1729 4332 w 10 /LucidaSans-Italic f -(Caribe) 1863 4452 w -(Activo) 2225 4452 w +(Caribe) 1863 4332 w +(Activo) 2225 4332 w 10 /LucidaSansUnicode00 f -(during) 2564 4452 w -(Spring) 2925 4452 w -(of) 3278 4452 w -(2015.) 3418 4452 w -(I) 3776 4452 w -(operated) 3847 4452 w -(their) 4321 4452 w -(Unix) 4589 4452 w -(sys\255) 4853 4452 w -(tems,) 820 4572 w -(setting) 1132 4572 w -(up) 1508 4572 w -(security) 1675 4572 w -(systems) 2096 4572 w -(and) 2529 4572 w -(remote) 2751 4572 w -(administration,) 3137 4572 w -(and) 3915 4572 w -(building) 4137 4572 w -(their) 4578 4572 w -(first) 4845 4572 w -(search engine with Node.js, MongoDB and LevelDB.) 820 4692 w +(during) 2564 4332 w +(Spring) 2925 4332 w +(of) 3278 4332 w +(2015.) 3418 4332 w +(I) 3776 4332 w +(operated) 3847 4332 w +(their) 4321 4332 w +(Unix) 4589 4332 w +(sys\255) 4853 4332 w +(tems,) 820 4452 w +(setting) 1132 4452 w +(up) 1508 4452 w +(security) 1675 4452 w +(systems) 2096 4452 w +(and) 2529 4452 w +(remote) 2751 4452 w +(administration,) 3137 4452 w +(and) 3915 4452 w +(building) 4137 4452 w +(their) 4578 4452 w +(first) 4845 4452 w +(search engine with Node.js, MongoDB and LevelDB.) 820 4572 w 10 /LucidaSans-Demi f -(Technical Experience and Skills) 720 4932 w +(Technical Experience and Skills) 720 4812 w 10 /LucidaSansUnicode00 f -(I) 970 5088 w -(use) 1032 5088 w +(I) 970 4968 w +(use) 1032 4968 w 10 /LucidaSans-Demi f -(Plan) 1234 5088 w -(9) 1486 5088 w +(Plan) 1234 4968 w +(9) 1486 4968 w 10 /LucidaSansUnicode00 f -(on) 1583 5088 w -(a) 1739 5088 w -(daily) 1827 5088 w -(basis,) 2088 5088 w -(along) 2402 5088 w -(with) 2704 5088 w +(on) 1583 4968 w +(a) 1739 4968 w +(daily) 1827 4968 w +(basis,) 2088 4968 w +(along) 2402 4968 w +(with) 2704 4968 w 10 /LucidaSans-Demi f -(FreeBSD) 2942 5088 w +(FreeBSD) 2942 4968 w 10 /LucidaSansUnicode00 f -(and) 3394 5088 w +(and) 3394 4968 w 10 /LucidaSans-Demi f -(Linux) 3607 5088 w +(Linux) 3607 4968 w 10 /LucidaSansUnicode00 f -(.) 3889 5088 w -(I) 3986 5088 w -(designed) 4048 5088 w -(and) 4523 5088 w -(imple\255) 4737 5088 w -(mented) 970 5208 w -(my) 1378 5208 w -(home/laboratory) 1564 5208 w -(network,) 2425 5208 w -(including) 2890 5208 w +(.) 3889 4968 w +(I) 3986 4968 w +(designed) 4048 4968 w +(and) 4523 4968 w +(imple\255) 4737 4968 w +(mented) 970 5088 w +(my) 1378 5088 w +(home/laboratory) 1564 5088 w +(network,) 2425 5088 w +(including) 2890 5088 w 10 /LucidaSans-Demi f -(DHCP) 3380 5208 w +(DHCP) 3380 5088 w 10 /LucidaSansUnicode00 f -(and) 3710 5208 w -(a) 3931 5208 w +(and) 3710 5088 w +(a) 3931 5088 w 10 /LucidaSans-Demi f -(DNS) 4026 5208 w +(DNS) 4026 5088 w 10 /LucidaSansUnicode00 f -(server) 4279 5208 w -(handling) 4616 5208 w -(its) 970 5328 w -(own) 1135 5328 w -(SOA) 1383 5328 w -(\(Start) 1632 5328 w -(of) 1937 5328 w -(Authority\)) 2083 5328 w -(using) 2614 5328 w -(Plan) 2928 5328 w -(9,) 3178 5328 w -(along) 3322 5328 w -(with) 3640 5328 w -(a) 3894 5328 w +(server) 4279 5088 w +(handling) 4616 5088 w +(its) 970 5208 w +(own) 1135 5208 w +(SOA) 1383 5208 w +(\(Start) 1632 5208 w +(of) 1937 5208 w +(Authority\)) 2083 5208 w +(using) 2614 5208 w +(Plan) 2928 5208 w +(9,) 3178 5208 w +(along) 3322 5208 w +(with) 3640 5208 w +(a) 3894 5208 w 10 /LucidaSans-Demi f -(TFTP) 3998 5328 w +(TFTP) 3998 5208 w 10 /LucidaSansUnicode00 f -(service) 4303 5328 w -(so) 4688 5328 w -(that) 4849 5328 w -(machines) 970 5448 w -(can) 1472 5448 w -(bootup) 1683 5448 w -(automatically) 2072 5448 w -(through) 2759 5448 w +(service) 4303 5208 w +(so) 4688 5208 w +(that) 4849 5208 w +(machines) 970 5328 w +(can) 1472 5328 w +(bootup) 1683 5328 w +(automatically) 2072 5328 w +(through) 2759 5328 w 10 /LucidaSans-Demi f -(PXE) 3188 5448 w +(PXE) 3188 5328 w 10 /LucidaSansUnicode00 f -(.) 3376 5448 w -(Most) 3482 5448 w -(of) 3759 5448 w -(the) 3899 5448 w -(systems) 4096 5448 w -(inside) 4529 5448 w -(this) 4861 5448 w -(network) 970 5568 w -(are) 1404 5568 w -(virtual) 1598 5568 w -(and) 1946 5568 w -(hosted) 2169 5568 w -(on) 2542 5568 w +(.) 3376 5328 w +(Most) 3482 5328 w +(of) 3759 5328 w +(the) 3899 5328 w +(systems) 4096 5328 w +(inside) 4529 5328 w +(this) 4861 5328 w +(network) 970 5448 w +(are) 1404 5448 w +(virtual) 1598 5448 w +(and) 1946 5448 w +(hosted) 2169 5448 w +(on) 2542 5448 w 10 /LucidaSans-Demi f -(FreeBSD) 2708 5568 w +(FreeBSD) 2708 5448 w 10 /LucidaSansUnicode00 f -(with) 3170 5568 w +(with) 3170 5448 w 10 /LucidaSans-Demi f -(Bhyve) 3418 5568 w +(Bhyve) 3418 5448 w 10 /LucidaSansUnicode00 f -(,) 3723 5568 w -(using) 3798 5568 w -(a) 4107 5568 w -(custom) 4205 5568 w -(VM) 4603 5568 w -(man\255) 4797 5568 w -(agement toolset I developed.) 970 5688 w -(I also use) 2443 5688 w +(,) 3723 5448 w +(using) 3798 5448 w +(a) 4107 5448 w +(custom) 4205 5448 w +(VM) 4603 5448 w +(man\255) 4797 5448 w +(agement toolset I developed.) 970 5568 w +(I also use) 2443 5568 w 10 /LucidaSans-Demi f -(jails\(8\)) 2933 5688 w +(jails\(8\)) 2933 5568 w 10 /LucidaSansUnicode00 f -(for some of my services.) 3316 5688 w +(for some of my services.) 3316 5568 w 10 /LucidaSansUnicode20 f -(") 720 5844 w +(") 720 5724 w 10 /LucidaSansUnicode00 f -(I) 970 5844 w +(I) 970 5724 w 10 /LucidaSansUnicode20 f -(\031) 999 5844 w +(\031) 999 5724 w 10 /LucidaSansUnicode00 f -(m proficient with) 1031 5844 w +(m proficient with) 1031 5724 w 10 /LucidaSans-Demi f -(C) 1891 5844 w +(C) 1891 5724 w 10 /LucidaSansUnicode00 f -(and shells like) 1994 5844 w +(and shells like) 1994 5724 w 10 /LucidaSans-Demi f -(rc) 2720 5844 w +(rc) 2720 5724 w 10 /LucidaSansUnicode00 f -(,) 2818 5844 w +(,) 2818 5724 w 10 /LucidaSans-Demi f -(ksh) 2882 5844 w +(ksh) 2882 5724 w 10 /LucidaSansUnicode00 f -(and) 3100 5844 w +(and) 3100 5724 w 10 /LucidaSans-Demi f -(\(ba\)sh) 3312 5844 w +(\(ba\)sh) 3312 5724 w 10 /LucidaSansUnicode00 f -(.) 3632 5844 w +(.) 3632 5724 w 10 /LucidaSansUnicode20 f -(") 720 6000 w +(") 720 5880 w 10 /LucidaSansUnicode00 f -(I) 970 6000 w -(use) 1035 6000 w -(the) 1241 6000 w -(UNIX) 1433 6000 w -(text-processing) 1705 6000 w -(tools) 2518 6000 w -(\() 2794 6000 w +(I) 970 5880 w +(use) 1035 5880 w +(the) 1241 5880 w +(UNIX) 1433 5880 w +(text-processing) 1705 5880 w +(tools) 2518 5880 w +(\() 2794 5880 w 10 /LucidaSans-Demi f -(awk) 2827 6000 w +(awk) 2827 5880 w 10 /LucidaSansUnicode00 f -(,) 3035 6000 w +(,) 3035 5880 w 10 /LucidaSans-Demi f -(sed) 3104 6000 w +(sed) 3104 5880 w 10 /LucidaSansUnicode00 f -(,) 3286 6000 w +(,) 3286 5880 w 10 /LucidaSans-Demi f -(grep) 3355 6000 w +(grep) 3355 5880 w 10 /LucidaSansUnicode00 f -(,) 3591 6000 w -(etc\)) 3660 6000 w -(on) 3874 6000 w -(a) 4034 6000 w -(daily) 4126 6000 w -(basis) 4391 6000 w -(for) 4677 6000 w -(sys\255) 4853 6000 w -(tem) 970 6120 w -(administration) 1209 6120 w -(tasks,) 1966 6120 w -(also) 2303 6120 w -(document) 2552 6120 w -(preparation) 3090 6120 w -(\() 3706 6120 w +(,) 3591 5880 w +(etc\)) 3660 5880 w +(on) 3874 5880 w +(a) 4034 5880 w +(daily) 4126 5880 w +(basis) 4391 5880 w +(for) 4677 5880 w +(sys\255) 4853 5880 w +(tem) 970 6000 w +(administration) 1209 6000 w +(tasks,) 1966 6000 w +(also) 2303 6000 w +(document) 2552 6000 w +(preparation) 3090 6000 w +(\() 3706 6000 w 10 /LucidaSans-Demi f -(troff) 3739 6120 w +(troff) 3739 6000 w 10 /LucidaSansUnicode00 f -(and) 4024 6120 w -(its) 4257 6120 w -(macro) 4427 6120 w -(pack\255) 4780 6120 w -(ages\) and manuals.) 970 6240 w +(and) 4024 6000 w +(its) 4257 6000 w +(macro) 4427 6000 w +(pack\255) 4780 6000 w +(ages\) and manuals.) 970 6120 w 10 /LucidaSansUnicode20 f -(") 720 6396 w +(") 720 6276 w 10 /LucidaSansUnicode00 f -(I) 970 6396 w +(I) 970 6276 w 10 /LucidaSansUnicode20 f -(\031) 999 6396 w +(\031) 999 6276 w 10 /LucidaSansUnicode00 f -(ve) 1031 6396 w -(created) 1186 6396 w -(concurrent) 1592 6396 w -(programs) 2163 6396 w -(under) 2677 6396 w -(the) 3008 6396 w -(formal) 3210 6396 w -(model) 3573 6396 w -(of) 3922 6396 w +(ve) 1031 6276 w +(created) 1186 6276 w +(concurrent) 1592 6276 w +(programs) 2163 6276 w +(under) 2677 6276 w +(the) 3008 6276 w +(formal) 3210 6276 w +(model) 3573 6276 w +(of) 3922 6276 w 10 /LucidaSans-Demi f -(CSP) 4067 6396 w +(CSP) 4067 6276 w 10 /LucidaSansUnicode00 f -(by) 4304 6396 w -(Tony) 4467 6396 w -(Hoare) 4753 6396 w -(with) 970 6516 w +(by) 4304 6276 w +(Tony) 4467 6276 w +(Hoare) 4753 6276 w +(with) 970 6396 w 10 /LucidaSans-Demi f -(Go) 1207 6516 w +(Go) 1207 6396 w 10 /LucidaSansUnicode00 f -(as well as Plan 9) 1378 6516 w +(as well as Plan 9) 1378 6396 w 10 /LucidaSansUnicode20 f -(\031) 2173 6516 w +(\031) 2173 6396 w 10 /LucidaSansUnicode00 f -(s) 2205 6516 w +(s) 2205 6396 w 10 /LucidaSans-Demi f -(libthread) 2288 6516 w +(libthread) 2288 6396 w 10 /LucidaSansUnicode00 f -(, and) 2756 6516 w +(, and) 2756 6396 w 10 /LucidaSans-Demi f -(POSIX threads) 3032 6516 w +(POSIX threads) 3032 6396 w 10 /LucidaSansUnicode00 f -(.) 3757 6516 w +(.) 3757 6396 w 10 /LucidaSansUnicode20 f -(") 720 6672 w +(") 720 6552 w 10 /LucidaSansUnicode00 f -(I) 970 6672 w -(have) 1054 6672 w -(developed) 1334 6672 w -(firmware) 1888 6672 w -(for) 2372 6672 w -(the) 2566 6672 w +(I) 970 6552 w +(have) 1054 6552 w +(developed) 1334 6552 w +(firmware) 1888 6552 w +(for) 2372 6552 w +(the) 2566 6552 w 10 /LucidaSans-Demi f -(Atmel) 2776 6672 w -(ATmega328P) 3135 6672 w +(Atmel) 2776 6552 w +(ATmega328P) 3135 6552 w 10 /LucidaSansUnicode00 f -(and) 3867 6672 w -(the) 4103 6672 w +(and) 3867 6552 w +(the) 4103 6552 w 10 /LucidaSans-Demi f -(STM32F103RB) 4314 6672 w +(STM32F103RB) 4314 6552 w 10 /LucidaSansUnicode00 f -(microcontrollers, using both) 970 6792 w +(microcontrollers, using both) 970 6672 w 10 /LucidaSans-Demi f -(C) 2381 6792 w +(C) 2381 6672 w 10 /LucidaSansUnicode00 f -(and) 2484 6792 w +(and) 2484 6672 w 10 /LucidaSans-Demi f -(Assembly) 2696 6792 w +(Assembly) 2696 6672 w 10 /LucidaSansUnicode00 f -(.) 3197 6792 w +(.) 3197 6672 w 10 /LucidaSansUnicode20 f -(") 720 6948 w +(") 720 6828 w 10 /LucidaSansUnicode00 f -(I) 970 6948 w -(also) 1042 6948 w -(have) 1281 6948 w -(some) 1550 6948 w -(experience) 1855 6948 w -(with) 2430 6948 w -(the) 2679 6948 w +(I) 970 6828 w +(also) 1042 6828 w +(have) 1281 6828 w +(some) 1550 6828 w +(experience) 1855 6828 w +(with) 2430 6828 w +(the) 2679 6828 w 10 /LucidaSans-Demi f -(Verilog) 2878 6948 w +(Verilog) 2878 6828 w 10 /LucidaSansUnicode00 f -(hardware) 3292 6948 w -(description) 3786 6948 w -(language) 4373 6948 w -(and) 4860 6948 w -(I) 970 7068 w +(hardware) 3292 6828 w +(description) 3786 6828 w +(language) 4373 6828 w +(and) 4860 6828 w +(I) 970 6948 w 10 /LucidaSansUnicode20 f -(\031) 999 7068 w +(\031) 999 6948 w 10 /LucidaSansUnicode00 f -(m currently learning more \() 1031 7068 w +(m currently learning more \() 1031 6948 w 10 /LucidaSans-Demi f -(PWM) 2363 7068 w +(PWM) 2363 6948 w 10 /LucidaSansUnicode00 f -(,) 2605 7068 w +(,) 2605 6948 w 10 /LucidaSans-Demi f -(VGA) 2669 7068 w +(VGA) 2669 6948 w 10 /LucidaSansUnicode00 f -(and) 2920 7068 w +(and) 2920 6948 w 10 /LucidaSans-Demi f -(UART) 3132 7068 w +(UART) 3132 6948 w 10 /LucidaSansUnicode00 f -(so far\).) 3450 7068 w +(so far\).) 3450 6948 w 10 /LucidaSansUnicode20 f -(") 720 7224 w +(") 720 7104 w 10 /LucidaSansUnicode00 f -(I) 970 7224 w +(I) 970 7104 w 10 /LucidaSansUnicode20 f -(\031) 999 7224 w +(\031) 999 7104 w 10 /LucidaSansUnicode00 f -(ve used) 1031 7224 w +(ve used) 1031 7104 w 10 /LucidaSans-Demi f -(git) 1435 7224 w +(git) 1435 7104 w 10 /LucidaSansUnicode00 f -(,) 1575 7224 w +(,) 1575 7104 w 10 /LucidaSans-Demi f -(mercurial) 1639 7224 w +(mercurial) 1639 7104 w 10 /LucidaSansUnicode00 f -(, and) 2129 7224 w +(, and) 2129 7104 w 10 /LucidaSans-Demi f -(svn) 2405 7224 w +(svn) 2405 7104 w +10 /LucidaSansUnicode00 f +(as version control systems.) 2619 7104 w +10 /LucidaSansUnicode20 f +(") 720 7260 w +10 /LucidaSansUnicode00 f +(I) 970 7260 w +10 /LucidaSansUnicode20 f +(\031) 999 7260 w +10 /LucidaSansUnicode00 f +(ve) 1031 7260 w +(built) 1182 7260 w +(infrastructure) 1445 7260 w +(for) 2150 7260 w +(testing) 2332 7260 w +(and) 2709 7260 w +(build) 2932 7260 w +(automation) 3221 7260 w +(with) 3816 7260 w +10 /LucidaSans-Demi f +(QEMU/KVM) 4065 7260 w +10 /LucidaSansUnicode00 f +(,) 4659 7260 w +10 /LucidaSans-Demi f +(Bhyve) 4735 7260 w 10 /LucidaSansUnicode00 f -(as version control systems.) 2619 7224 w (February 2022 ) 2478 7680 w cleartomark showpage @@ -6296,187 +6309,165 @@ mark 3 pagesetup 10 /LucidaSansUnicode00 f (\255 3 \255) 2783 480 w -10 /LucidaSansUnicode20 f -(") 720 840 w -10 /LucidaSansUnicode00 f -(I) 970 840 w -10 /LucidaSansUnicode20 f -(\031) 999 840 w -10 /LucidaSansUnicode00 f -(ve) 1031 840 w -(built) 1179 840 w -(infrastructure) 1439 840 w -(for) 2141 840 w -(testing) 2320 840 w -(and) 2694 840 w -(build) 2914 840 w -(automation) 3200 840 w -(with) 3792 840 w +(and) 970 840 w 10 /LucidaSans-Demi f -(QEMU/KVM) 4037 840 w +(VirtualBox) 1182 840 w 10 /LucidaSansUnicode00 f -(,) 4631 840 w -10 /LucidaSans-Demi f -(Bhyve) 4703 840 w -10 /LucidaSansUnicode00 f -(,) 5008 840 w -(and) 970 960 w -10 /LucidaSans-Demi f -(VirtualBox.) 1182 960 w +(.) 1715 840 w 10 /LucidaSansUnicode20 f -(") 720 1116 w +(") 720 996 w 10 /LucidaSansUnicode00 f -(I) 970 1116 w -(have) 1046 1116 w -(experience) 1318 1116 w -(using) 1896 1116 w +(I) 970 996 w +(have) 1046 996 w +(experience) 1318 996 w +(using) 1896 996 w 10 /LucidaSans-Demi f -(soldering) 2209 1116 w -(iron) 2745 1116 w +(soldering) 2209 996 w +(iron) 2745 996 w 10 /LucidaSansUnicode00 f -(with) 3000 1116 w -(precise) 3252 1116 w -(narrow) 3647 1116 w -(and) 4032 1116 w -(batch-soldering) 4260 1116 w -(wide) 970 1236 w -(tips) 1248 1236 w -(to) 1480 1236 w -(treat) 1630 1236 w -(through-hole) 1908 1236 w -(and) 2613 1236 w -(surface-mounted) 2845 1236 w -(electronic) 3742 1236 w -(components,) 4267 1236 w -(at) 4948 1236 w -(temperatures) 970 1356 w -(ranging) 1675 1356 w -(from) 2105 1356 w -(200) 2395 1356 w -(to) 2642 1356 w -(400\260C.) 2798 1356 w -(I) 3206 1356 w +(with) 3000 996 w +(precise) 3252 996 w +(narrow) 3647 996 w +(and) 4032 996 w +(batch-soldering) 4260 996 w +(wide) 970 1116 w +(tips) 1248 1116 w +(to) 1480 1116 w +(treat) 1630 1116 w +(through-hole) 1908 1116 w +(and) 2613 1116 w +(surface-mounted) 2845 1116 w +(electronic) 3742 1116 w +(components,) 4267 1116 w +(at) 4948 1116 w +(temperatures) 970 1236 w +(ranging) 1675 1236 w +(from) 2105 1236 w +(200) 2395 1236 w +(to) 2642 1236 w +(400\260C.) 2798 1236 w +(I) 3206 1236 w 10 /LucidaSansUnicode20 f -(\031) 3235 1356 w +(\031) 3235 1236 w 10 /LucidaSansUnicode00 f -(ve) 3267 1356 w -(also) 3433 1356 w -(used) 3687 1356 w +(ve) 3267 1236 w +(also) 3433 1236 w +(used) 3687 1236 w 10 /LucidaSans-Demi f -(desoldering) 3977 1356 w -(wick) 4649 1356 w +(desoldering) 3977 1236 w +(wick) 4649 1236 w 10 /LucidaSansUnicode00 f -(to) 4942 1356 w -(clean some joints and non-corrosive) 970 1476 w +(to) 4942 1236 w +(clean some joints and non-corrosive) 970 1356 w 10 /LucidaSans-Demi f -(flux) 2780 1476 w +(flux) 2780 1356 w 10 /LucidaSansUnicode00 f -(.) 2979 1476 w +(.) 2979 1356 w 10 /LucidaSansUnicode20 f -(") 720 1632 w +(") 720 1512 w 10 /LucidaSansUnicode00 f -(I) 970 1632 w -(also) 1045 1632 w -(have) 1287 1632 w -(some) 1558 1632 w -(experience) 1865 1632 w -(using) 2442 1632 w -(a) 2754 1632 w +(I) 970 1512 w +(also) 1045 1512 w +(have) 1287 1512 w +(some) 1558 1512 w +(experience) 1865 1512 w +(using) 2442 1512 w +(a) 2754 1512 w 10 /LucidaSans-Demi f -(digital) 2855 1632 w -(oscilloscope) 3233 1632 w +(digital) 2855 1512 w +(oscilloscope) 3233 1512 w 10 /LucidaSansUnicode00 f -(to) 3916 1632 w -(analyze) 4061 1632 w -(signals) 4474 1632 w -(and) 4860 1632 w -(properties) 970 1752 w -(of) 1512 1752 w -(the) 1654 1752 w -(hardware) 1853 1752 w -(I) 2347 1752 w -(work) 2420 1752 w -(on,) 2700 1752 w -(although) 2898 1752 w -(the) 3371 1752 w -(features) 3569 1752 w -(I) 4007 1752 w -(use) 4079 1752 w -(have) 4291 1752 w -(been) 4559 1752 w -(very) 4839 1752 w -(simple so far.) 970 1872 w +(to) 3916 1512 w +(analyze) 4061 1512 w +(signals) 4474 1512 w +(and) 4860 1512 w +(properties) 970 1632 w +(of) 1512 1632 w +(the) 1654 1632 w +(hardware) 1853 1632 w +(I) 2347 1632 w +(work) 2420 1632 w +(on,) 2700 1632 w +(although) 2898 1632 w +(the) 3371 1632 w +(features) 3569 1632 w +(I) 4007 1632 w +(use) 4079 1632 w +(have) 4291 1632 w +(been) 4559 1632 w +(very) 4839 1632 w +(simple so far.) 970 1752 w 10 /LucidaSans-Demi f -(Education) 720 2112 w +(Education) 720 1992 w 10 /LucidaSansUnicode20 f -(") 720 2268 w +(") 720 2148 w 10 /LucidaSansUnicode00 f -(Books,) 970 2268 w -(scientific) 1336 2268 w -(papers,) 1813 2268 w -(technical) 2219 2268 w -(specifications) 2696 2268 w -(and) 3403 2268 w -(people) 3628 2268 w +(Books,) 970 2148 w +(scientific) 1336 2148 w +(papers,) 1813 2148 w +(technical) 2219 2148 w +(specifications) 2696 2148 w +(and) 3403 2148 w +(people) 3628 2148 w 10 /LucidaSansUnicode20 f -(\031) 3956 2268 w +(\031) 3956 2148 w 10 /LucidaSansUnicode00 f -(s) 3988 2268 w -(experiences) 4084 2268 w -(shared) 4712 2268 w -(on the Internet are my main source of knowledge.) 970 2388 w +(s) 3988 2148 w +(experiences) 4084 2148 w +(shared) 4712 2148 w +(on the Internet are my main source of knowledge.) 970 2268 w 10 /LucidaSansUnicode20 f -(") 720 2544 w +(") 720 2424 w 10 /LucidaSans-Italic f -(Software) 970 2544 w -(Security) 1443 2544 w +(Software) 970 2424 w +(Security) 1443 2424 w 10 /LucidaSansUnicode00 f -(by) 1878 2544 w -(Prof.) 2038 2544 w -(Michael) 2310 2544 w -(Hicks,) 2724 2544 w -(University) 3065 2544 w -(of) 3589 2544 w -(Maryland,) 3733 2544 w -(College) 4254 2544 w -(Park) 4662 2544 w -(on) 4917 2544 w -(Coursera MOOC.) 970 2664 w -(Earned in September 2016) 1845 2664 w +(by) 1878 2424 w +(Prof.) 2038 2424 w +(Michael) 2310 2424 w +(Hicks,) 2724 2424 w +(University) 3065 2424 w +(of) 3589 2424 w +(Maryland,) 3733 2424 w +(College) 4254 2424 w +(Park) 4662 2424 w +(on) 4917 2424 w +(Coursera MOOC.) 970 2544 w +(Earned in September 2016) 1845 2544 w 10 /LucidaSansUnicode20 f -(") 720 2820 w +(") 720 2700 w 10 /LucidaSans-Italic f -(Middle) 970 2820 w -(Degree) 1338 2820 w -(S.M.R.) 1732 2820 w -(\(Sistemas) 2081 2820 w -(Microinform\341ticos) 2593 2820 w -(y) 3523 2820 w -(Redes\)) 3630 2820 w +(Middle) 970 2700 w +(Degree) 1338 2700 w +(S.M.R.) 1732 2700 w +(\(Sistemas) 2081 2700 w +(Microinform\341ticos) 2593 2700 w +(y) 3523 2700 w +(Redes\)) 3630 2700 w 10 /LucidaSansUnicode00 f -(,) 3942 2820 w -(I.E.S.) 4026 2820 w -(Las) 4311 2820 w -(Espe\361etas,) 4523 2820 w -(Orihuela, ALC.) 970 2940 w -(From September 2014 to June 2016) 1733 2940 w +(,) 3942 2700 w +(I.E.S.) 4026 2700 w +(Las) 4311 2700 w +(Espe\361etas,) 4523 2700 w +(Orihuela, ALC.) 970 2820 w +(From September 2014 to June 2016) 1733 2820 w 10 /LucidaSansUnicode20 f -(") 720 3096 w +(") 720 2976 w 10 /LucidaSans-Italic f -(Some) 970 3096 w -(online) 1278 3096 w -(courses) 1620 3096 w -(on) 2038 3096 w -(Science,) 2208 3096 w -(Engineering,) 2643 3096 w -(Law) 3301 3096 w -(&) 3546 3096 w -(Economy) 3667 3096 w +(Some) 970 2976 w +(online) 1278 2976 w +(courses) 1620 2976 w +(on) 2038 2976 w +(Science,) 2208 2976 w +(Engineering,) 2643 2976 w +(Law) 3301 2976 w +(&) 3546 2976 w +(Economy) 3667 2976 w 10 /LucidaSansUnicode00 f -(,) 4096 3096 w -(MIT) 4179 3096 w -(OpenCourse\255) 4408 3096 w -(Ware, EdX, Stanford Online, HarvardX and Coursera) 970 3216 w +(,) 4096 2976 w +(MIT) 4179 2976 w +(OpenCourse\255) 4408 2976 w +(Ware, EdX, Stanford Online, HarvardX and Coursera) 970 3096 w (February 2022 ) 2478 7680 w cleartomark showpage diff --git a/es/cv.pdf b/es/cv.pdf index e1316d1..ad60867 100644 Binary files a/es/cv.pdf and b/es/cv.pdf differ diff --git a/mkfile b/mkfile index 86c076b..a67e182 100644 --- a/mkfile +++ b/mkfile @@ -4,10 +4,10 @@ NPROC=1 %.ps: %.jpg lp -dstdout -pjpgpost $prereq > $target -all:VQ: cv.ps cv.pdf +all:VQ: cv.ps cv.pdf cover.ps cover.pdf clean:VQ: - rm -f cv.ps cv.pdf + rm -f cv.ps cv.pdf cover.ps cover.pdf cv.ps:V: cv.ms {echo $FONTS; cat $prereq}> _$prereq @@ -16,3 +16,11 @@ cv.ps:V: cv.ms cv.pdf:V: cv.ps cat /sys/doc/docfonts $prereq > _$prereq ps2pdf _$prereq $target && rm -f _$prereq + +cover.ps:V: cover.ms + {echo $FONTS; cat $prereq}> _$prereq + eval `{doctype _$prereq} | lp -dstdout > $target && rm -f _$prereq + +cover.pdf:V: cover.ps + cat /sys/doc/docfonts $prereq > _$prereq + ps2pdf _$prereq $target && rm -f _$prereq -- cgit v1.2.3