Profile:
Passionate, responsible, and committed software engineer with 10+ years of experience in design, implementation, and maintenance of complex industrial software systems within the fields of electronic design automation and semiconductor manufacturing. Have created software systems from scratch to finish. Capable of independently learning new technologies. Have demonstrated technical leadership through the exploration and evaluation of technologies, owning issues, rising to the challenges, and sharing and encouraging others to follow. Educational background: physics and computer science. Additional profile information: https://www.linkedin.com/in/peter-haahr Qualifications Summary:
Software Engineering
● Standard algorithm theory
● Experience with usage of OOA/OOD techniques, including design patterns
● Solid experience with distributed systems and concurrent programming
● Experience in scientific and numerical programming
● Hands-on experience with network programming
● Proficient in C/C++, Java, Scala, and Python. Familiar with Bash, Perl, Tcl, and Haskell
● RDBMS: Have working experience with MySQL, PostgreSQL, and H2
● Familiar with fundamental web technologies (HTTP, HTML, JavaScript, JQuery, AngularJS, CSS, and RESTful Web API’s)
● Experience with revision control systems (Git, Perforce, Subversion, CVS, Clearcase)
● Experience with build automation systems (Make, Maven, Gradle, SBT)
● Experience with testing, debugging, and performance tuning
● Familiar with the full software release cycle, including specification, prototyping, implementation, verification, validation, sign-off, and deployment. SDLC Models: Waterfall and Scrum
● Possess excellent team work and interpersonal skills
● Have good documentation and communication skills: successfully documented software products, tools, processes, work flows and procedures Big Data, Data Engineering, and Data Analysis
● Familiar with Hadoop, Spark, Pig, Hive and ZooKeeper
● Experience with applied classical machine learning and common data analysis tools/ frameworks (Python data science stack, R)
● Some familiarity with deep learning theory/frameworks (Keras, Tensorflow, DL4J) PETER H CHRISTENSEN, M.Sc. 256 Palm Valley Blvd, Apt 207 San Jose, CA 95123, USA
Mobile: 408-***-****
Email: *****.***********@***.***
1 of 5
● Hands-on experience with cluster resource management systems
● Familiar with NoSQL (Cassandra)
● Hands-on experience with Docker and Kubernetes
● Hands-on experience with cloud computing (AWS and Google Cloud Platforms) Physics and Electrical Engineering
● Solid background in semiconductor process physics, technology CAD, and electronic design automation (simulation and physical verification)
Employment History:
Senior Software Engineer, HealthExpense, November 2015 - June 2017
● Implemented and maintained data aggregators for mining, transforming, and storing medical claims data from health insurance web sites and third party administrators.
● Implemented and maintained minor front-end features
● Languages/Tools/Platforms used: Scala, Akka, Scala Lift, Postgres, SBT, IntelliJ IDEA, GitHub, JIRA, Jenkins, Selenium, JSoup, JavaScript, AngularJS, CSS and XPath selector syntax. Platform: OS X and Linux.
Software Architect, DreamStart Labs Inc., April 2016 -
● Actively participating in a project, whose objective is to provide a mobile based platform for facilitating financial inclusion for some of the most under-privileged people of the World
● Researched, installed, and configured third party SMS gateway solutions to allow communication with end-users in areas with poor package networking / WiFi coverage
● Designed, implemented, tested, and deployed a cloud-based containerized SMS banking solution for product
● Languages/Tools/Platforms user: Python3, Flask micro-framework, Gunicorn, Babel, Google Container Engine, Docker, Kubernetes, YouTrack, GitLab, SMS Gateway portals (Telerivet, Infobip)
Staff Engineer II, ASML, Dec 2012 - Apr 2015
● Co-designed and implemented a custom cluster resource management system (CRMS) for controlling the distribution of compute resources among running distributed jobs and for optimizing cluster resource utilization. System was successfully deployed on a customer cluster with 500+ nodes and dramatically improved utilization as reported by customer
● Implemented an event based simulator for analysis of tailing effects in distributed processing jobs and evaluation of distributed processing schemes
● Investigated behavior of different thread caching memory allocators
● Collaborated with product engineering, SQA, and customer with respect to design, test, sign- off of GUI mockups, and deployment of CRMS tool
● Languages/Tools/Platforms used: Python 2.7/3.3, C/C++, MySQL, Bash, Excel, Perforce, Emacs, vim, PyCharm, JIRA, Confluence, and Gliffy on Windows 7 and Linux 2 of 5
Independent Consultant, PStar, Feb 2011 - Sep 2012
● Analyzed performance of various types of semiconductor deposition tools (ALD, CVD) using machine learning methods
● Implemented Java code for prototype analysis tool
● Devised wafer uniformity metrics
● Participated in customer meetings related to presentation and discussion of analysis results
● Languages/Tools/Platforms used: Java SE6, Python, SQL(H2, SQLite), Excel, Eclipse, CVS, and Subversion on Win7 and Linux
Senior Staff Engineer, Synopsys, Mar 2008 - Mar 2010
● Architected a CMP simulation tool in C++ from an existing C prototype and prepared resulting module for integration into a larger product
● Maintained and enhanced an industry-standard field solver product
● Co-architected and helped implement a multi-physics-based interconnect reliability analysis tool using components from an existing product
● Languages/Tools/Platforms used: C++, C, gcc, Perl, Tcl, Emacs, Bison/Flex, CMake, Purify, Valgrind, Perforce, Coverity on Linux
Software Engineer, Luminescent Technologies, Aug 2006 - Oct 2007
● Worked on stitching and final mask assembly component of distributed RET tool
● Devised new stitching algorithms for eliminating mask rule violations and improving final mask quality (:edge placement error/process window) at partition boundaries
● Implemented scan-line algorithm and various other routines for polygon integrity checking and sign off
● Improved backend robustness and solved numerous usability issues
● Designed suite of regression tests for stitching
● Languages/Tools/Platforms used: C++, gcc, Emacs, CMake, Purify, Valgrind/Callgrind, CVS, and gprof on Linux
Software Engineer, Sun Microsystems, Scalable Systems Group, Oct 2004 - Jun 2006
● Implemented and tested parallelization of internal extraction tool, including design partitioning scheme
● Maintained and extended electromigration limit library used by electromigration engine and rail analysis tool
● Buildmeister for group maintained integration stream, including rebasing from and delivering development projects to release streams
● Created software implementation specifications, presentations relevant to projects, and participated in code reviews
● Languages/Tools/Platforms used: C++/STL, Perl, Tcl, XML, SunStudio/NetBeans, Emacs, Make, Purify, Valgrind, Clearcase/UCM, Xerces, and gprof on SunOS Software Engineer, Magma Design Automation, Sept 2000 - Sept 2004 3 of 5
● Maintained and enhanced a gate-level electromigration checker (analysis/avoidance/repair).
● Worked on RC extraction and noise analysis engines
● Implemented and enhanced ALF (Advanced Library Format) reader, using third party parser implemented in PCCTS
● QA tested own code.
● Participated in design discussions and product planning meetings for various backend tools
(parasitics extraction, delay calculation, noise and X-talk analysis, antenna effect analysis, etc.) with customers as well as product engineering
● Provided product consultation and support for customers as well as field application engineers
● Languages/Tools/Platforms used: C++, C, Tcl, Perl, Python, Emacs, Visual Studio, Make, Purify, Valgrind, Clearcase, Bison, PCCTS, and gprof on Linux, Windows, and SunOS Software Engineer, Sequence Design, Apr 1999 - Sept 2000
● Integrated RC parasitics extractor into customer design flows
● Implemented a multi-dialect SPICE parser/scanner using Bison and Flex
● Participated in implementation of high capacity handling stitching software for fully coupled wire models
● Participated in porting/release activities
● Participated in design discussions and specifications
● Languages/Tools/Platforms used: C++, Tcl, Perl, Emacs, Make, Purify, CVS, Bison, and Flex on SunOS
Software Engineer, Silvaco, Jun 1997 - Apr 1999
● Implemented a dopant diffusion model hierarchy in C++, using subclassing and polymorphism, and linked it into existing application (ATHENA, SUPREM-IV)
● Participated in constructing a finite element method/sparse matrix solver for solving a system of non-linear, stiffly coupled reaction-diffusion equations
● Participated in porting/release activities
● Participated in design discussions and specifications
● Languages/Tools/Platforms used: C++, Perl, Emacs, Make, Purify, and CVS on SunOS System Administrator, KNI Pilersuisoq, Ilulissat, Greenland, Jul 1996 - Jun 1997
● Maintained/monitored WAN, server park, and communication lines to IATA database
● Supported, consulted with users
● Languages/Tools/Platforms used: DECNet terminal client on Windows and VAX VMS Education:
Master of Science in Physics, University of Aarhus, Denmark, May 1995
● Coursework, Physics: Solid state/semiconductor physics, optics and laser physics, atomic/ molecular physics, statistical physics
● Thesis work, Physics: Experimental study of high-concentration diffusion of arsenic in silicon, including the implementation of diffusion simulation software in Turbo Pascal/F77 for comparing experimental dopant profiles with theoretical profiles 4 of 5
● Coursework, Computer Science: Data structures and high-level programming, compiler and language theory, complexity theory, object-oriented design and programming, parallel programming, machine architecture
Language Skills:
● Fluent in English and Danish
● Read/speak some German
Papers:
Larsen, A. N., B. Christensen, P. Christensen, and S. Shirayev. 1992. “Ion Implanted Arsenic in Silicon.” Paper represented at IBMM, September 7-11, Heidelberg, Germany. Committees:
Member of the IEEE committee for Standard 1603, “IEEE Standard for an Advanced Library Format
(ALF) Describing Integrated Circuit (IC) Technology, Cells, and Blocks” until ALF became an official IEEE standard on February 15, 2004.
Nationality: Dual citizen of Denmark/USA
5 of 5