CV
UNDER CONSTRUCTION
This is an extend version of my curriculum vitae with an extended explanation of what I have worked with and on.
Employment
As a Student Software Developer, I have helped develop the companies different products and libraries for internal usage. Products I have helped developing include a distributed cloud storage solution and network coding libraries implemented in C++ and JavaScript. On occasion I have also acted as temporary team lead, when needed.
Technologies and techniques which I have used: Network Coding, Distribute Storage and Systems, micro web service and software design, Go, C/C++, Python, Google App Engine, Google CloudSQL, MySQL, PostgresSQL, Linux, macOS, and web service security.
During my employment I helped create, design and implement the companies products, demos, and software libraries. I predominately worked with the development of open source software libraries, for reference see github.com/steinwurf, I am particular proud of having worked on Bitter, Endian, the different WiFi monitoring tools, and languages bindings for Kodo.
I redesigned and implement steinwurf.com from the ground up in the static page generation system Jekyll.
Additional as part of my ninth semester at Aalborg University, my semester project was a collaboration with Steinwurf Aps. The project is under an NDA, but the general problem to be attacked, was to design a system for Android based mobile device, which could handle distribute real-time recorded audio and play it back on receiving devices, with minimum delay using Steinwurf proprietary communication protocol Score. The project resulted in a initial demonstration system, which does require further development and I achieved the highest possible grade for the project during the exam.
Technologies and techniques which I have used: Network Coding, Android, Clang++, LLVM, LLDB, HTML 5, CSS3, C/C++, JavaScript, Java, Ruby, Python, Android, Linux, BSD, macOS, Buildbot, Waf, Performance and memory profiling, Open Source licensing, and iPython Notebook.
As part of Computer Science program at Business Academy Aarhus, students must intern at a company and conduct a project called Hovedeopgave. I did both of these things at AU IT SUA, during my internship I helped extend and refactor a system called EDDI, which is an overlay to STADS (Study Administrative System), aimed at administrative personal for easing the usage of STADS. STADS is used on all Universities in Denmark but it does not fit all uses needs and EDDI aims to rectify some of that. The task that was set for my Hovedeopgave was to design and implement a activity logging system in EDDI from the ground up, as it was an essential missing feature. The software was designed as plug-in to EDDI with focus on usability, functionality and modularity. EDDI is developed in ColdFusion and for this reason so is the logging system, to increase maintain ability. I achieved an average grade for the academic part of my project, but the software is still in use to this day.
After I ended my internship and my Computer Science study, I continued as a student software developer, until I started at Aalborg University. My tasks was to extend the logging systems features and the EDDI it self.
During both my internship and employment, I found multiple major security holes in EDDI, which I helped fix. This include system design faults, unsanitised data, web service calls without authorisation and more. All where fixed and can therefore safely be listed here.
Technologies and techniques which I have used: Software and System design and development, customer interactions, SCRUM, Oracle PL/SQL, CouldFusion9, HTML4.x/5, CSS3, and Windows 7.