Petros Sousouris
Computer Engineer
New York, NY 10025
Phone: +1-917-***-****
E-mail: ***********@*****.***
LinkedIn: Petros Sousouris
Professional and Research Experience
Research assistant at CASTL group, 09/2017 - now
Columbia University in the City of New York, New York, US Security oriented research. Some of the areas include FPGA bitstreams, memory allocation patterns of applications and the Linux kernel
Software Engineer, 01/2017 - 07/2017
Peoplecert, Athens, Greece
C# and .NET development for automated testing framework Software Developer, 09/2016 - 12/2016
Ministry of National Defense, Athens, Greece
Internal software projects for the ministry
IT engineer, 03/2016 - 08/2016
Supreme Military Support Command, Athens, Greece
Server and Network Administration and Maintenance
Skills
Programming: C, C++, C#, Java, Python, SQL
Technologies: Intel Pin, Selenium, SystemC, LLVM, Cadence Stratus, Xilinx ISE Languages: Greek (Native), English (Fluent), German (Elementary) Education
M.Sc. in Computer Science, Columbia University, New York, US, 09/2017 - 12/2018. Current GPA: 3.69/4.00.
Selected Courses: Analysis of Algorithms, Security Architecture and Engineering, Artificial Intelligence, Computer Architecture, Introduction to Databases, System-On-Chip Platforms M.Eng. in Electrical & Computer Engineering, National Technical University of Athens, Athens, Greece, 09/2010 - 03/2016
Major: Computer Science, GPA: 8.06/10.00
Advisor: Prof. Dimitrios Sountris
Thesis: “Development of a Systematic Methodology for Run-time Dynamic Frequency Scaling Techniques on FPGA exploiting Data Path Slack Fluctuations”
Petros Sousouris 2
Selected Projects
Analysis of paddings in dynamic memory allocations (2018 Columbia, New York, US)
Developed a C++ toolchain (a pintool and two clang passes) to instrument all memory allocations
Calculated number of padding bytes per allocation
Used open source projects like Google V8, SQLite, and Mozilla Firefox
Statistical analysis of compiler inserted paddings of the above projects Hardware accelerator for VGG-16 convolutional neural network (2018 Columbia, New York, US)
Developed an accelerator for image inferencing using SystemC
Tested on Xilinx FPGA platform (ZCU106 evaluation platform)
High level synthesis optimization techniques used for better performance and less area Kernel side implementation of REST (2018 Columbia, New York, US)
Instrumented kernel memory allocations
Added support for hardware based protection against memory errors in the kernel
Utilized novel extensions to x86-64 instruction set for low overhead Testing framework for LanguageCert (2017 Peoplecert, Athens, Greece)
Developed a fully automated framework in C# to test the new format of the LanguageCert exams
Simulated interaction of a candidate using Selenium framework
Caught many UI and backend bugs before going live Compiler for the imaginary PaZcal (2014 - 2015 NTUA, Athens, Greece)
Co-developed (in a team of 2) a C compiler for PaZcal programming language (developed at NTUA)
Assisted in the development of lexical and syntactical parsers using Lex and Bison
Lead the development of various optimizations in the internal representation stage Custom Linux driver for a temperature sensor system (2015 NTUA, Athens, Greece)
Developed a custom Linux driver in C for a temperature monitoring system
Extended capabilities of original driver by presenting more information to user