Giter Site home page Giter Site logo

đŸŒ±đŸš€ Filip Jacobson

Engineer Developer Consultant

I'm a recent CS graduate from KTH Royal Institute of Technology, with experience in a variety of programming languages like Java, Elixir, and Python, while I'm currently diving deep into Golang.

Engineering skills

Proficient Intermediate Beginner
Languages Java C Python Elixir HTML CSS ASM Go SQL Rust
Frameworks JUnit PyTeal Gin Fiber
Web Services REST OAuth GraphQL Webhooks
Cloud AWS GCP Azure IBM
Databases PostgreSQL MongoDB
Tools VSCode Git PowerBI Mathematica Snow Asset Mgmt Wireshark Jira Postman Docker Kubernetes Kafka
Methodologies & Practices Scrum SDLC TDD Pair Programming

Important

Scroll down to dive deeper into all subjects/topics I've explored during my time at KTH ↓

Certificates

Course Issuer Progress Certificate
Introduction to Cloud  IBM   Course Certificate
AWS Cloud Practitioner  AWS   Course Certificate
PPS Practical Project Steering – Project Leadership Tieto Course Certificate
PPS Practical Project Steering – Step 1   Tieto    Course Certificate
ITILŸ Foundation Certificate in IT Service Management   EXIN / AXELOS    Course Certificate
 CCNA Routing and Switching Cisco     
 CCNA Networking Fundamentals Cisco     
GCP Cloud Digital Leader  GCP  
AWS Certified Solutions Architect - Associate  AWS  
AWS Certified Developer - Associate  AWS  
Azure Fundamentals Microsoft  

University studies

Degree

Information and Communication Technology
Degree of Bachelor of Science (Teknologie kandidatexamen)
KTH Royal Insititute of Technology

Degree project

Tracing of Second-Life Computer Components using Smart Contracts on the Algorand Blockchain: A study on how blockchain technology can benefit the life cycle of computer components

In a circular economy, tracking the flow of second-life components for quality control is critical. Track and trace of products or product parts are an essential enabler for a circular economy. With the use of tokenization and blockchain, products can be traced in a decentralized and secure fashion. In this thesis, we implement a system that could be used for the tracking and tracing of computer components. Using the Algorand blockchain, we have implemented a system based on the typical actors involved in the life cycle of a computer. Employing smart contracts, we have set up a system that regulates the ownership of the tokens representing the parts in a computer. We also performed scalability tests on the developed system to measure its time to perform certain critical operations. The result of these test indicate that the developed system is useful at scale. The open-source implementation of the system is publicly available on GitHub.

Python PyTeal Algorand

DiVA

CircleChain

My contributions to the project led to my co-authorship of the research team's published scientific paper:

CircleChain: Tokenizing Products with a Role-based Scheme for a Circular Economy

In a circular economy, tracking the flow of second-life components for quality control is critical. Tokenization can enhance the transparency of the flow of second-life components. However, simple tokenization does not correspond to real economic models and lacks the ability to finely manage complex business processes. In particular, existing systems have to take into account the different roles of the parties in the supply chain. Based on the Algorand blockchain, we propose a role-based token management scheme, which can achieve authentication, synthesis, circulation, and reuse of these second-life components in a trustless environment. The proposed scheme not only achieves fine-grained and scalable second-life component management, but also enables on-chain trading, subsidies, and green-bond issuance. Furthermore, we implemented and performed scalability tests for the proposed architecture on Algorand blockchain using its smart contracts and Algorand Standard Assets (ASA). The open-source implementation, tests, along with results are available on our GitHub page.

Python PyTeal Algorand

arXiv

CircleChain

Courses

Computer Engineering

IE1204 – Digital Design
Theory: 
- Boolean Algebra and Gate Logic (AND, OR, NOT, Min/Max, SOP/POS, NAND, NOR, XOR, XNOR)
- MOS technology (CMOS/PMOS/NMOS, Tri-State, Fan-in/out, N-var Karnaugh Map, PLA, PAL)
- Digital Arithmetics (Add, Sub, Comparator, FA/RCA/CLA/CSA, Mul, Div, Barrel Shifter, Int/Fixed-Point/Floating-Point Number)
- Combinatorial Building Blocks (Multiplexer/Demultiplexer, Encoder/Decoder, Shannon Decomposition, VHDL)
- Memory Elements (D/SR Latches, D/T Flip-Flops)
- Sync FSMs (Moore/Mealy State Machines, State Minimization, ASM-Charts, Formal FSM Model)
- Async FSMs (Synthesis, State Minimization, State Encoding, Hazards, Metastability, Async Inputs)
- Programmable Logic (PLD/CPLD, FPGA, LUT, ASIC Gate Array/Standard Cell) 

Practical experience:
- VHDL
IS1200 – Computer Hardware Engineering
Theory:
- Instruction Set Architecture (MIPS, ARMv7, CISC/RISC)
- Assembly (Arithmetics, Constants, Cond Branches, Arrays, Memory Access, Funct Calls, Argument/Return Vals, Stack, Pointers)
- I/O Systems (Memory Mapped I/O, GPIO, Sync/Async Buses, DMA, Timers, Parallel/Serial Coms, PCI/USB, Interrupts, SPI/I2C)
- Processor Design (ALU, Control Unit, Pseudo-Direct Addressing, Performance Analysis, Spacial/Temporal Locality, Parallelism and Pipelining, Data/Control Hazards, Forwarding, Stalling, Flushing, Branch Prediction)
- Memory (SRAM/DRAM/Flash/Magnetic, Cache, Main/Virtual Memory, Direct Mapped/N-way/Fully Associative Cache, MMU, TLB)
- Parallell Processors and Programs (Parallelism, Concurrency, DLP, TLP, SISD/SIMD/MISD/MIMD, ILP, Hardware/Simultaneous Multithreading, GPUs, SMP, Semaphores, Mutex)

Practical experience:
- C
- Assembly
- MIPS
- ChipKIT Uno32
ID1206 – Operating Systems
Theory:
- Fundamentals (Abstraction, Virtualization, Resource Management)
- Processes (POSIX API, User/Kernel Space, Memory Layout, System Calls, Sync/Async Interrupts, Process State/Creation, Context Switching)
- Scheduling (Process Scheduling, FCFS, SJF, STCF, MLFQ, Stride/Real-Time Scheduling, RMS, EDF, Fairness)
- Segmentation (Memory Virtualization, Batching, Time-Sharing, Static/Dynamic Relocation, Fragmentation, Segmentation)
- Memory Management (Malloc, Coalescing, Buddy Allocation, mmap, sbrk)
- Paging (Page Table, Multi-Level Page Table, Inverted)
- Swapping (Random/OR/LRU Policy)
- Concurrency (Threads, Cache Coherence, Sequential Consistency, TSO, TLS) 
- Locks/Semaphores (Peterson's Algorithm, pthread mutex) 
- Storage (HDD/SSD/NAND/SSHD/RAID Anatomy)
- File Systems (inodes, Symbolic/Soft Links, Super Block, Disaster Recovery)
- VMs (Hypervisor/VMM, Containerization, Emulators, Runtime Systems)

Practical experience:
- C
IK1203 – Networks and Communication
Theory: 
- Fundamentals (Processing, Queueing, Transmission, Propagation, Delays, Losses, Throughput, Latency, Layering)
- Application Layer (HTTP, Cookies, Caching, SMTP, IMAP, POP3, FTP, DNS, Sockets)
- Transport Layer (UDP, TCP, Multiplexing/Demultiplexing, Congestion Control)
- Network Layer (IPv4, IPv6, NAT, DHCP, LS/DV/OSPF Routing, BGP, ICMP)
- Link Layer (Time/Frequency-Division Multiplexing, CSMA/CD, Polling/Token Passing, Ethernet, ARP, LL Switching, VLAN)

Practical experience:
- Java
- Socket Programming
- telnet
- OpenSSL
- SMTP
- POP3
- IMAP
- HTTP
- Wireshark
- Webmin
- dig
- Cisco Packet Tracer
- Cisco Router Configuration
- Linux Host Configuration
- DHCP
- DNS
IV1013 – Introduction to Computer Security
Theory: 
- Symmetric Key Cryptography (Polybius, Polygraphic, S-Boxes, Trithemius, VigenĂšre, One-Time Pads, PRNG, Stream, RC4, Block, Hill, Transposition, AES)
- Asymmetric Key Cryptography (RSA, Elgamal, Diffie-Hellman)
- Hashing (MD5, SHA, Signatures, Collision Resistance)
- Firewalls (Policies, Stateless/ful, PFF, ALG)
- Tunneling (SSH, IPsec, VPN)
- Web Security (HTTPS, Certificates, Cookies, XSS)
- File System Security (ACM/ACL, File/Disk Encryption, EFS, BitLocker, TrueCrypt, Plausible Deniability)
- Attacks (M-i-t-M, Brute Force, Overflow, Spoofing, Sniffing, Sequence Prediction, Sesh Hijacking, Flooding, DDoS, Cache Poisoning, Malware, Replay)

Practical experience:
- Java
- Wireshark
- Linux Firewalls

Software Development

ID1018 – Programming I
Theory: 
- Data Storage (Variables, Primitive Data Types, Conversions)
- Methods (Creation, Handling, Recursion)
- Algorithms (Selection, Search, Complexity, Correctness)
- Objects (Services, Resources, Inheritance/Class Resources, Handling)
- Exceptions (Handling, Hierarchies, Patterns)
- I/O (Streams, STDIN/STDOUT, Binary/Text/Object Files)
- Inheritance (Sub/Super Class, Polymorphism, Dynamic Binding)
- Interfaces (Hierarchies, Type Independence, Inner Classes)

Practical experience:
- Java
ID1019 – Programming II
Theory:
- Basic Types (Arithmetics, Functions, Bools, Atoms, Strings, Lists, Tuples)
- Recursion (Tail Recursion, Accumulators, n-reverse, n-flatten)
- Tree Structures (Insert, Delete, Key-Value Lookup, Modify)
- λ Calculus (Bottoms, Scope, Order-of-Evaluation, Functions, Expressions, Recursion)
- Evaluation ([Case] Expression/Sequence Evaluation, Pattern Matching, Free Variables, Scope)
- Complexity (Big-O, Run-Time Complexity)
- Dynamic Programming
- Concurrency (CSP, Actor Model, Selective Receive, Implicit Deferral, Flow-Based Programming)
- Parallelism (Loop/Map-Reduce/Task/Stream Parallelism, Null Test, Image Processing)

Practical experience:
- Elixir
ID1020 – Algorithms and Data Structures
Theory: 
- Data Structures ([Priority] Queues, Linked Lists, Stacks, Bags/Multisets, Trees, Generics/Iterators, Hash Tables, Union-Find Forests, [Weighted] Quick-Find/Union)
- Sorting Algorithms (Selection/Insertion/Shell/Merge/Quick Sort, Shuffle/Topological Sort)
- Searching Algorithms (Sequential/Binary Search, Binary Search Tree, 2-3 Tree, Red-Black BST, LLRB BST, B-Tree, Separate-Chaining Symbol Table, Linear-Probing Hash Table)
- Graph Algorithms (Directed/Undirected Graphs, Depth-/Breadth-First Search, Bipartiteness, Euler/Hamilton Cycle, Isomorphism, Digraph Search, Kosaraju-Sharir, Minimum Spanning Tree, Shortest Path, CFG, Halting Problem, Master Theorem)
- Algorithm Analysis ('~'-notation, Big-Oh/Ω/Θ, P/NP/NP-Complete, Memory Complexity)

Practical experience:
- Java
IV1303 – Modern Software Development
Theory: 
- Software (Architecture, Processes, Methods, Practices, Software Life-Cycle)
- Projects (Functional/Non-Functional/Domain Requirements, Scope Creep, State, Opportunity, Waterfall vs Agile, Pair Programming)
- Testing (Static vs Dynamic, Unit Tests, Integration Tests, Acceptance Tests, Structural/Path/Integration/Interface Tests)
- Quality Assurance (McCall Model, Ageing, Pollution, Coupling, Traceability, Maintainability, Refactoring)
- Risk Management (Project/Product/Business Risk, Prioritization)

Practical experience:
- Java
IV1350 – Object Oriented Design
Theory:
- Analysis (UML, Domain Model, System Sequence Diagram)
- Software Architecture (Architectural Structures/Classes/Styles/Patterns, Design Patterns)
- Version Control (Git)
- Testing and Reliability (Unit Tests, JUnit, Exception Handling)
- Programming Techniques and Best Practices (Packages, Conventions, Comments, Code Smell, Refactoring, Encapsulation, Cohesion, Coupling, Polymorphism, Inheritance)

Practical experience:
- Java
- Git

Mathematics

IX1303 – Algebra and Geometry
Theory:
- Basics and Definitions (Points, Lines, Surfaces)
- Vector Algebra (Vectors, Scalars, Scalar/Dot Product, Cross Product)
- Matrices and Systems of Equations (Matrices, Determinant, Linear Systems, Gaussian Elimination)
- Transformations and Mappings (Inverse Linear Transformations, Mappings, Subspaces, Kernel, Bases, Dimensions)
- Vector Spaces and Coordinate Systems
- Orthogonality and Least Squares
- Eigenvalues and Eigenvectors (Diagonalization, Eigenvalues, Eigenvectors, Complex Eigenvalues, Dynamical Systems, Stability)
IX1307 – Problem-Solving in Mathematics
Theory:
- Logic (Universal/Existential Propositions, Predicates, Universal/Logic Equivalence/Implication, Contradictions, Tautologies, Negations, Equivalent Transformation)
- Functions (Domain, Range, Real/Surjective/Injective/Bijective/Inverse/Composite Functions)
- Algebraic Identities (Equation [Systems], Inequalities)
- Sets (Sets of Real/Natural/Integers/Points/Ordered n-tuples)
- Real Functions (Linear/2nd Degree/Odd/Even/Rational/Trigonometric Functions, Mirror/Move, Floor/Roof Functions, Polynomial)
- Complex Numbers (Operations, Complex Regions, Complex Trigonometric Formulas, Principal Roots, Binomial Equations)
IX1500 - Discrete Mathematics
Theory:
- Combinatorics and Set Theory (Addition/Multiplication Principles, Permutations, Combinations, Arrangements, Selections, Inclusion-Exclusion Principle, Binomial Theorem, Sets, Binary Operations)
- Integers and Relations (Divisibility, Euclidean Algorithm, Induction, Recursion, Prime Numbers, Diophantine Equations, Fundamental Theorem of Arithmetic, Functions, Equivalence Relations, Order Relations)
- Rings (Group, Ring, Euler's Theorem, Chinese Remainder Theorem)
- Graph Theory (Nodes, Vertices, Edges, [Simple] Paths, Cycles, Isomorphism, Vertex/Adjacency Matrix, Directional/Multi/Weighted Graphs, [Minimum] Spanning Tree, Kruskals/Dijkstras Algorithm, Euler/Hamilton/Planar/Bipartite/Homeomorphic Graphs, Chromatic Numbers/Polynoms, Contraction)
IX1501 – Mathematical Statistics
Theory:
- Probability Theory (Discrete/Continuous, Dependent/Independent Events, Kolmogorovs Axiom, Sampling Methods, Conditional/Law of Total Probability Probability, Bayes' Theorem)
- Stochastic Variables (Geometric/Binomial/Hypergeometric/Poisson/Uniform/Exponential/Normal Distribution, Quantile, Interquartile Range, Variance, Standard Deviation, Dispersion, Law of Large Numbers, Central Limit Theorem, Approximation by Normal Distribution, Convolution)
- Statistical Inference (Point/Interval/Unbiased/Consistent/Maximum-Likelihood Estimation, Least-Squares Method, Confidence Interval/Level, Null/Alternative Hypothesis, Significance Level, Statistical Power)
- Statistical Modelling (Linear Regression, Dependent/Independent Variables, Model Fitting)
SF1685 – Calculus in One Variable
Theory:
- Limits and Continuity (Functions, Polynomials, Trigonometry, Limits, Continuity)
- Derivative (Mean Value Theorem, Implicit Differentiation)
- Transcendental Functions (Inverse Functions, Natural Logarithm, Inverse Trigonometric Functions, Ordinary Differential Equation)
- Taylor Polynomials (Extreme Values, Curves, Linear Approximation, Taylor Expansion)
- Integrals (Theorem, Integration by Parts/Substitution)
- Arc Length and Series (Improper Integrals, Solids of Revolution, Arc Length, Taylor/Maclaurin Series)
SF1686 – Calculus in Several Variable
Theory:
- 3D Geometry and Functions of Several Variables (Analytic Geometry in 3D, Cylindrical/Spherical Coordinates, Vector Values Functions, Curves, Parametrizations, Functions, Limits, Continuity)
- Partial Derivatives and Linear Approximation (Partial/Higher-Order/Directional Derivatives, Chain Rule, Linear Approximation, Differentiability, Differentials, Gradient)
- Applications of Derivatives (Implicit Functions, Taylor's Formula/Series/Approximation, Extreme Values, Lagrange's Multiplicators)
- Multiple Integrals (Double/Triple Integration in Cartesian/Polar, Mean Value Theorem, Applications)
- Curve and Surface Integrals (Vector/Scalar/Conservative Fields, Line/Surface Integrals, Flux)
- Vector Calculus (Gradient, Divergence, Curl, Green's Theorem, Divergence Theorem, Stoke's Theorem)

Electronics & Physics

IF1330 – Electrical Principles
Theory:
- Resistive Circuits (Dependent/Independent Voltage/Current Sources, Ohms Law, KCL, KVL, Node-Voltage/Mesh-Current Method, Thevenin/Norton Equivalents, Superposition)
- Active Components ([Ideal] Operational Amplifier, Operational Amplifier Circuits w/ Resistors, Diode, Transistor)
- DC Transient Response of RC and RL Circuits (Inductance, Capacitance, 1st Order RC/RL Circuits)
- Passive Circuit Elements in Frequency Domain (Sinusoidal Sources, AC, Frequency, Period, Angular Frequency, Amplitude, Phase Angle, rms Value, Phasor Representation, Impedance, Reactance, Filter)
SK1118 – Electromagnetism and Waves
Theory:
- Electrostatics (Field Strength, Potential, Gauss’ Law, Metals, Dielectrics, Capacitor, Electrostatic Energy)
- Magnetic Fields (Forces, Magnetic Materials, Coils, Magnetic Energy, Technical Applications, Magnetic Induction
- Maxwell’s Equations (Wave Concept)
- Electromagnetic Waves (Polarization, Interference, Diffraction, Technical Applications)

Industrial Management & Innovation

ME1003 – Industrial Management
Theory:
- Industrial Value Creation (Technical Business Models, Technical Development for Competitiveness, Product, Innovation, Marketing, Strategy, Talent/HR Management, Business Organization)
- Cost Estimation (KPI Analysis, Product Cost Analysis, Investment Appraisal, Capital Budgeting)
- Accounting (Bookkeeping, Accounting, Annual Financial Reporting, Financial Statement Analysis)
- Financing (Business Capital Requirements, Equity, Debt)
AI2151 – Industrial Development and Entrepreneurship
Theory:
- Theoretical Foundations (International Project Management Theories, Sustainable/Ethical Considerations)
- Research (Information Sourcing, Critical Review)
- Practical Project Management (Real-World Project Application, Planning, Problem Identification, Critical Analysis, Stakeholder/Time Management, Post-Project/Retrospective Review/Analysis)
- Communication (Stakeholder Communication, Oral Presentation/Reporting, Written Documentation/Reporting)
AG1815 – Sustainable Development, ICT and Innovation
Theory:
- Theoretical Models and Frameworks (Environmental/Socio-Economic Boundaries, The Doughnut Economics Model, Life Cycle Thinking, Circular Economy, Rethinking Industry/Society)
- Climate Change (Science, Short-/Long-term Effects, Mitigation/Adaptation Strategies)
- Energy Systems (Renewable vs Non-Renewable Energy, Transition to Renewable Energy Systems/Sources)
- Technology x Sustainability (Sustainability-Driven Innovation, ICT, Transport, Building, Food, Electronics)
- Environmental Economics (Externalities, Market Failure, Environmental Taxes, Subsidies/Grants)
- Social Aspects (Environmental Justice, Policy, Sustainable Communities)

Engineering

II1300 – Engineering Skills
Theory:
- Technical Foundations for Engineering (Abstraction, Modelling, Simulations, Programming)
- Project and Information Management (Gantt, Sustainable Development)
- Work Environment and Human Factors (Work Environment, Ergonomics, Daily Operations)
- Ethical and Sustainable Engineering (Ethics/Morals, Environmental Sustainability)
II1305 – Project in Information and Communication Technology
Theory:
- Scrum (User Stories, Story Estimation/Planning Poker, Story Breakdown, Backlog Refinement, Sprint Planning/Retrospective, Product Design, Implementation, Team Velocity, How-to-Demo)
- Version Control (Git)

Practical experience:
- Scrum
- Git
- Swift

Filip Jacobson's Projects

Filip Jacobson doesn’t have any public repositories yet.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.