| 
									
										
										
										
											2014-01-23 23:08:42 -05:00
										 |  |  |  | <?php | 
					
						
							|  |  |  |  | include_once("../common.php"); | 
					
						
							|  |  |  |  | include("../header_top.php"); | 
					
						
							|  |  |  |  | ?>
 | 
					
						
							| 
									
										
										
										
											2018-05-08 20:41:20 -04:00
										 |  |  |  | <title>Aaron C. Lindsay, Software Engineer - Resume - aclindsay.com</title> | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | <?php include("../header_bottom.php"); ?>
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | <div id="content"> | 
					
						
							|  |  |  |  | 	<div id="main"> | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | <center><h2 style="border-bottom: none; margin: 1em 0 1.5em 0;"><span style="font-size: 1.2em; padding: 0 .5em 0 .5em;">Aaron C. Lindsay</span></h2></center> | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-05-08 20:43:00 -04:00
										 |  |  |  | <h3>Summary</h3> | 
					
						
							|  |  |  |  | <ul> | 
					
						
							| 
									
										
										
										
											2021-04-19 23:02:40 -04:00
										 |  |  |  | 	<li>I am a software engineer and processor architect with 12 years of professional experience distilling challenging problems down to their core and developing the best solutions within given constraints.</li> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:43:00 -04:00
										 |  |  |  | 	<li>I methodically debug elusive problems, chasing them across language and project boundaries.</li> | 
					
						
							|  |  |  |  | 	<li>I am a skilled communicator, which I use to ensure my solutions address the needs of others.</li> | 
					
						
							|  |  |  |  | 	<li>I don’t like repeating myself - I am liable to automate anything worthwhile.</li> | 
					
						
							|  |  |  |  | </ul> | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | <h3>Related Experience</h3> | 
					
						
							|  |  |  |  | <ul> | 
					
						
							| 
									
										
										
										
											2024-01-06 20:35:54 -05:00
										 |  |  |  | 	<li>Ampere Principal Senior Architect - August 2018 to present | 
					
						
							| 
									
										
										
										
											2012-11-18 12:33:33 -07:00
										 |  |  |  | 		<ul> | 
					
						
							| 
									
										
										
										
											2024-01-06 20:35:54 -05:00
										 |  |  |  | 		<li>Modeled performance of next-generation CPU designs, allowing accurate performance projections</li> | 
					
						
							| 
									
										
										
										
											2021-04-19 23:02:40 -04:00
										 |  |  |  | 		<li>Uncovered/prevented performance and functional defects through performance validation of RTL/verilog design and (micro)architectural study</li> | 
					
						
							|  |  |  |  | 		<li>Proposed and studied feasibility and efficiency of potential CPU microarchitectural features</li> | 
					
						
							|  |  |  |  | 		<li>Designed and implemented methodology to collect workloads for processor performance model using QEMU, also contributing to upstream development of its plugin interface</li> | 
					
						
							|  |  |  |  | 		<li>Conceived of and implemented technology to collect identical sections of workload execution in different formats to allow performance validation across simulation platforms</li> | 
					
						
							|  |  |  |  | 		</ul> | 
					
						
							|  |  |  |  | 	</li> | 
					
						
							|  |  |  |  | 	<li>Qualcomm Senior Engineer - August 2012 to August 2018 | 
					
						
							|  |  |  |  | 		<ul> | 
					
						
							|  |  |  |  | 		<li>Developed lightweight containers, Python workloads API, and ptrace-based tools to accelerate data-gathering and analysis for software and hardware optimization by enabling automated profiling across arbitrary workloads</li> | 
					
						
							|  |  |  |  | 		<li>Maintained in-house Linux distribution, authoring kernel patches and custom packaging to support modeling</li> | 
					
						
							|  |  |  |  | 		<li>Debugged Linux kernel and application functionality and performance at all levels – from high-level software using gdb to custom model instruction traces and processor pipeline interactions</li> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 		<li>Supported mapping performance data from software processor models to benchmark source code symbols by adding semihosting support for perf events in the Linux kernel</li> | 
					
						
							| 
									
										
										
										
											2021-04-19 23:02:40 -04:00
										 |  |  |  | 		<li>Influenced next-generation processor design via micro-benchmarks and innovative workload sampling methods, reducing the required performance model runtime over 1000x</li> | 
					
						
							|  |  |  |  | 		<li>Pioneered basic block vector-based validation for model workloads, ensuring trusted results for critical microarchitectural decisions – achieved correlation error of only 1% between software models and silicon</li> | 
					
						
							|  |  |  |  | 		<li>Adapted open-source software to speed up workload creation and contributed changes upstream, including emulated ARM PMUv3 (performance monitor) for QEMU</li> | 
					
						
							| 
									
										
										
										
											2012-11-18 12:33:33 -07:00
										 |  |  |  | 		</ul> | 
					
						
							|  |  |  |  | 	</li> | 
					
						
							| 
									
										
										
										
											2012-06-15 21:53:43 -06:00
										 |  |  |  | 	<li>Real-time Linux Systems Research at Virginia Tech - August 2010 to May 2012 | 
					
						
							|  |  |  |  | 		<ul> | 
					
						
							|  |  |  |  | 		<li>Formulated and empirically evaluated cache-aware real-time scheduling algorithms and partitioning schemes</li> | 
					
						
							|  |  |  |  | 		<li>Researched and implemented techniques for quickly communicating kernel scheduling decisions to user space</li> | 
					
						
							|  |  |  |  | 		</ul> | 
					
						
							| 
									
										
										
										
											2011-03-20 18:07:18 -06:00
										 |  |  |  | 	</li> | 
					
						
							| 
									
										
										
										
											2011-06-29 21:25:49 -06:00
										 |  |  |  | 	<li>Qualcomm Software Development Engineer - Summer 2011 | 
					
						
							| 
									
										
										
										
											2012-11-18 12:33:33 -07:00
										 |  |  |  | 		<ul> | 
					
						
							|  |  |  |  | 		<li>Developed and supported snapshot/restore mechanism for next-generation mobile processor simulator</li> | 
					
						
							|  |  |  |  | 		<li>Co-developed 'fast-forwarding' for the same processor performance model</li> | 
					
						
							|  |  |  |  | 		</ul> | 
					
						
							| 
									
										
										
										
											2011-06-29 21:25:49 -06:00
										 |  |  |  | 	</li> | 
					
						
							| 
									
										
										
										
											2011-03-20 18:07:18 -06:00
										 |  |  |  | 	<li>Virtual Environments Research in Computer Science - Spring 2010 | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | 		<ul><li>Conducted user studies testing the effects of interaction fidelity on procedure memorization</li> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 		<li>Developed test environment using Blender, Python, and interfaced with VR hardware using C++</li></ul> | 
					
						
							| 
									
										
										
										
											2011-03-20 18:07:18 -06:00
										 |  |  |  | 	</li> | 
					
						
							|  |  |  |  | 	<li>IBM Emerging Technologies (jStart Team) - January 2009 to February 2010 | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 		<ul><li>Architected, programmed, tested, and presented new distributed mashup technology utilizing XMPP, custom Java server, MySQL, HTML5, JavaScript, and CSS</li> | 
					
						
							| 
									
										
										
										
											2021-04-20 09:58:36 -04:00
										 |  |  |  | 		<li>Granted <a href="https://patents.google.com/patent/US20110161833A1/en">patent US20110161833</a> for "Distributed Multi-User Mashups"</li></ul> | 
					
						
							| 
									
										
										
										
											2011-03-20 18:07:18 -06:00
										 |  |  |  | 	</li> | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | </ul> | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | <h3>Technical Hobbies</h3> | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | <ul> | 
					
						
							| 
									
										
										
										
											2021-04-19 23:02:40 -04:00
										 |  |  |  | 	<li>Develop open-source software – recently personal finance/accounting software in python, Go, and ReactJS</li> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 	<li>Administer web services for family/friends using Ansible, including email, wiki, personal cloud, and git</li> | 
					
						
							|  |  |  |  | </ul> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | <h3>Expertise</h3> | 
					
						
							|  |  |  |  | 	<h4 style="margin: 0em;">Languages:</h4> | 
					
						
							| 
									
										
										
										
											2021-04-19 23:02:40 -04:00
										 |  |  |  | 	<p style="margin: .5em 0 .5em 2em;">Assembly (ARM), (Ba)sh, C, C++, Go, HTML/CSS, JavaScript, make, Python, (reading) verilog</p> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 	<h4 style="margin: 0em;">Skills:</h4> | 
					
						
							| 
									
										
										
										
											2021-04-19 23:02:40 -04:00
										 |  |  |  | 	<p style="margin: .5em 0 .5em 2em;">Design/develop/debug applications, libraries, and operating system kernels (Linux), optimize for performance (from processor microarchitecture to assembly to web applications), construct software CPU models, debug complex multi-system problems, Linux/Unix administration, automation, data analysis</p> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | <h3>Education</h3> | 
					
						
							|  |  |  |  | Virginia Polytechnic Institute and State University (Virginia Tech), Blacksburg, VA | 
					
						
							|  |  |  |  | <ul> | 
					
						
							|  |  |  |  | 	<li>M.S. Computer Science and Applications (3.95/4.0 GPA) - June 2012 | 
					
						
							| 
									
										
										
										
											2021-04-20 09:46:21 -04:00
										 |  |  |  | 	<ul><li>Thesis: <a href="https://vtechworks.lib.vt.edu/handle/10919/33541"><i>LWFG: A Cache-Aware Multi-core Real-Time Scheduling Algorithm</i></a></li></ul> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:35:17 -04:00
										 |  |  |  | 	</li> | 
					
						
							|  |  |  |  | 	<li>B.S. Computer Science / Math Minor (Summa Cum Laude - 3.90/4.0 GPA) - December 2010</li> | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | </ul> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 	</div> | 
					
						
							|  |  |  |  | 	<div id="sidebar"> | 
					
						
							|  |  |  |  | 		<h4>Other Formats</h4> | 
					
						
							|  |  |  |  | 		<ul> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:40:21 -04:00
										 |  |  |  | 			<li><a href="<?php echo get_base_url(); ?>/resume/AaronLindsay-Resume.pdf">Resume (pdf)</a></li> | 
					
						
							| 
									
										
										
										
											2018-05-11 22:04:38 -04:00
										 |  |  |  | 			<li><a href="<?php echo get_base_url(); ?>/resume/AaronLindsay-Resume.tex">Resume (LaTeX)</a> and <a href="<?php echo get_base_url(); ?>/resume/AaronLindsay-Resume.cls">.cls file</a></li> | 
					
						
							| 
									
										
										
										
											2018-05-08 20:40:21 -04:00
										 |  |  |  | 			<li><a href="<?php echo get_base_url(); ?>/resume/AaronLindsay-Resume.txt">Resume (plain text)</a></li> | 
					
						
							| 
									
										
										
										
											2014-01-24 22:44:19 -05:00
										 |  |  |  | 			<li style="margin-top: 1em;">Note: All contact information has been removed from the above - please <a href="<?php echo get_base_url(); ?>/contact">contact me via email</a>.</li> | 
					
						
							| 
									
										
										
										
											2011-03-20 17:56:05 -06:00
										 |  |  |  | 		</ul> | 
					
						
							|  |  |  |  | 	</div> | 
					
						
							|  |  |  |  | </div> | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | <?php include("../footer.php"); ?>
 |