Add new screenshots, remove old ones, update colors for roles, minor word tweaks
This commit is contained in:
+50
-31
@@ -69,7 +69,7 @@
|
||||
<header>
|
||||
<div>
|
||||
<h1>doylet <em class=title-note>// doy-lee</em></h1>
|
||||
<p>Low-level programming enthusiast. Uses C/C++ often. Passion for tools, privacy & game technology. Curious and learning everyday.</p>
|
||||
<p>Low-level programming enthusiast. Uses C/C++ often. Passion for tools, privacy & game technology. Curious and learning every day.</p>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@@ -163,14 +163,20 @@
|
||||
<h2>Work</h2>
|
||||
|
||||
<div>
|
||||
<h3>Session (Private Messaging/Blockchain) [2024-2026]<img class=favicon src="assets/session-favicon.ico"></h3>
|
||||
<h3><img class=favicon src="assets/session-favicon.ico">Session (Private Messaging/Blockchain) [2024-2026] <a href="https://getsession.org">getsession.org</a></h3>
|
||||
<ul class=keywords-list>
|
||||
<li>C++20</li>
|
||||
<li>Python (Flask/UWSGI)</li>
|
||||
<li>CMake</li>
|
||||
<li>Solidity (Smart Contracts)</li>
|
||||
<li>Cryptonote</li>
|
||||
<li>Open Source</li>
|
||||
</ul>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/work_session.png"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<ul>
|
||||
<li class=job-role style="border-color: #519A8B">2024 - 2026: C++ Senior Software Engineer</li>
|
||||
</ul>
|
||||
@@ -202,7 +208,6 @@
|
||||
</ul>
|
||||
<small>
|
||||
<ul class=citations>
|
||||
<li>Session Messenger <a href="https://getsession.org/">https://getsession.org/</a></li>
|
||||
<li id="session-smart-contracts">[1] Smart Contracts <a href="https://github.com/Doy-lee/session-token-contracts/tree/doyle-manual-contract-interaction">github.com/Doy-lee/session-token-contracts/tree/doyle-manual-contract-interaction</a></li>
|
||||
<li id="session-payment-architecture">[2] Payment Architecture <a href="https://github.com/session-foundation/session-pro-backend/tree/6bfea783644e4f2a77096fb2535465a7af86c5d0#architecture">github.com/session-foundation/session-pro-backend/tree/6bfea783644e4f2a77096fb2535465a7af86c5d0#architecture</a></li>
|
||||
<li id="session-plugins">[3] Session Plugins <a href="https://github.com/Doy-lee/session-pysogs/blob/doyle-plugin-installers/plugins.md">github.com/Doy-lee/session-pysogs/blob/doyle-plugin-installers/plugins.md</a></li>
|
||||
@@ -211,7 +216,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h3>Agent Orientated Software (AI/Robotics) [2020-2024]<img class=favicon src="assets/aos-favicon.ico"></h3>
|
||||
<h3><img class=favicon src="assets/aos-favicon.ico">Agent Orientated Software (AI/Robotics) [2020-2024] <a href="https://aosgrp.com">aosgrp.com</a></h3>
|
||||
<ul class=keywords-list>
|
||||
<li>C++17</li>
|
||||
<li>CMake</li>
|
||||
@@ -219,13 +224,18 @@
|
||||
<li>DDS+Kafka (Data Distribution)</li>
|
||||
<li>2D Discrete Event Simulator (ImGui, GLFW)</li>
|
||||
</ul>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/work_aos.jpg"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<ul>
|
||||
<li class=job-role style="border-color: #C16358">2022 - 2024: C++ Senior Software Engineer</li>
|
||||
<li class=job-role style="border-color: #BEBF5E">2020 - 2022: C++ Software Engineer</li>
|
||||
</ul>
|
||||
<p>
|
||||
AOS aims to build trustable and explainable AI using <i>multi-agent systems</i> with the
|
||||
cognitive framework, <i>Beliefs, Desires and Intentions</i> (BDI). My role involves
|
||||
cognitive framework, <i>Beliefs, Desires and Intentions</i> (BDI). My role involved
|
||||
improving the AI toolchain such as improving cross-agent collaboration, forward planning,
|
||||
scheduling and de-conflicting of agent intentionality, its execution and distributed agent
|
||||
communication to improve resilience in adversarial situations.
|
||||
@@ -241,14 +251,13 @@
|
||||
</ul>
|
||||
<small>
|
||||
<ul class=citations>
|
||||
<li>Agent Orientated Software <a href="https://aosgrp.com">aosgrp.com</a></li>
|
||||
<li>Github <a href="https://github.com/jackagents/jack">github.com/jackagents/jack</a></li>
|
||||
</ul>
|
||||
</small>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h3>Oxen (Privacy Software/Blockchain) [2018 - 2022]<img class=favicon src="assets/oxen-favicon-32x32.png"></h3>
|
||||
<h3><img class=favicon src="assets/oxen-favicon-32x32.png">Oxen (Privacy Software/Blockchain) [2018 - 2022] <a href="https://oxen.io">oxen.io</a></h3>
|
||||
<ul class=keywords-list>
|
||||
<li>C++14</li>
|
||||
<li>Boost</li>
|
||||
@@ -259,6 +268,11 @@
|
||||
<li>Open Source</li>
|
||||
<li>Applied Cryptography (Cryptonote/Libsodium)</li>
|
||||
</ul>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/work_oxen.png"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<ul>
|
||||
<li class=job-role style="border-color: #8DBCA2">2018 - 2020: C++ Software Engineer</li>
|
||||
</ul>
|
||||
@@ -273,7 +287,7 @@
|
||||
</p>
|
||||
<p>
|
||||
With over 1k+ servers and growing, the Service Node network provides a sybil-resistant
|
||||
foundation to facilitate a privacy preserving onion routing network, Lokinet, and, a
|
||||
foundation to facilitate a privacy preserving onion routing network, Lokinet, and a
|
||||
privacy preserving messenger, Session.
|
||||
</p>
|
||||
<ul class=bullet-points>
|
||||
@@ -283,12 +297,11 @@
|
||||
<li>Created an on-chain DNS registry to map cryptographic keys to human readable aliases (e.g. Lokinet domains, Oxen wallets and Session aliases).</li>
|
||||
<li>Transitioned from Proof of Work to Proof of Stake live in production, deprecated miners for a commit-reveal scheme to generate entropy for minting blocks.</li>
|
||||
<li>Owned the release process (build/package/distribute) end to end.</li>
|
||||
<li>Patched 0-days and exploits & recovering from consensus failure on a live production network.</li>
|
||||
<li>Patched 0-days and exploits, recovering from consensus failure on a live production network.</li>
|
||||
<li>Improved the test framework for including re-write of Monero's framework and adding integration tests using IPC over named pipes.</li>
|
||||
</ul>
|
||||
<small>
|
||||
<ul class=citations>
|
||||
<li>Oxen Website <a href="https://oxen.io">oxen.io</a></li>
|
||||
<li id="oxen-git-commits">[1] Git Commits <a href="https://github.com/oxen-io/oxen-core/pulls?q=is%3Apr+author%3Adoy-lee+is%3Aclosed+">github.com/oxen-io/oxen-core/pulls?q=is%3Apr+author%3Adoy-lee+is%3Aclosed</a></li>
|
||||
<li id="oxen-service-nodes">[2] Service Nodes <a href="https://oxen.gitbook.io/oxen-docs/about-the-oxen-blockchain/oxen-service-nodes">oxen.gitbook.io/oxen-docs/about-the-oxen-blockchain/oxen-service-nodes</a></li>
|
||||
<li id="oxen-checkpointing">[3] Checkpointing <a href="https://github.com/oxen-io/oxen-improvement-proposals/blob/master/LIPS/LIP-3.md">github.com/oxen-io/oxen-improvement-proposals/blob/master/LIPS/LIP-3.md</a></li>
|
||||
@@ -299,7 +312,7 @@
|
||||
|
||||
<div>
|
||||
<h3>Older Work</h3>
|
||||
<p class=job-role style="border-color: #519A8B">2017: C++ Intern Tools Engineer, Wargaming Sydney</p>
|
||||
<p class=job-role style="border-color: #6B8AE4">2017: C++ Intern Tools Engineer, Wargaming Sydney</p>
|
||||
<p>
|
||||
Game development company most popular for developing World of Tanks. I was in the tools
|
||||
team assisting with the development of the editor for the asset pipeline.
|
||||
@@ -320,9 +333,9 @@
|
||||
<div><hr></div>
|
||||
<section aria-label="Projects">
|
||||
<h2>Projects</h2>
|
||||
|
||||
<h3>On-going</h3>
|
||||
<div>
|
||||
<p class=job-role style="border-color: #C16358">2018 - CURR: DN Library <a href="https://git.doylet.dev/doylet/dn">git.doylet.dev/doylet/dn</a></p>
|
||||
<p class=job-role style="border-color: #A78BDA">2018 - CURR: DN Library <a href="https://git.doylet.dev/doylet/dn">git.doylet.dev/doylet/dn</a></p>
|
||||
<ul class=keywords-list>
|
||||
<li>C style C++</li>
|
||||
<li>Single File Library</li>
|
||||
@@ -337,7 +350,7 @@
|
||||
<li>Cross-Platform (Win32/POSIX/Emscripten)</li>
|
||||
</ul>
|
||||
<p>
|
||||
My personal foundational libraries for tools in C-style C++ that replaces the C/C++
|
||||
My personal foundational libraries for tools in C-style C++ that replace the C/C++
|
||||
standard libraries for my projects. It provides a set of primitives designed around
|
||||
explicit memory control with allocator-aware APIs, zero-allocation patterns, and
|
||||
arena-based memory management where appropriate.
|
||||
@@ -363,7 +376,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #C16358">2023 - CURR: TELY Engine</p>
|
||||
<p class=job-role style="border-color: #7EAAC4">2023 - CURR: TELY Engine (Closed Source)</p>
|
||||
<ul class=keywords-list>
|
||||
<li>C style C++</li>
|
||||
<li>Sokol</li>
|
||||
@@ -373,6 +386,11 @@
|
||||
<li>Asset Management</li>
|
||||
<li>Cross-Platform (Win32/Emscripten)</li>
|
||||
</ul>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/projects_tely.jpg"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
An in-house engine and framework built on Sokol that provides a platform layer, 2D
|
||||
batched renderer, asset management, font rendering with FreeType and HarfBuzz, streaming
|
||||
@@ -382,7 +400,7 @@
|
||||
<p>
|
||||
It compiles as a native desktop app and can target the web. It includes a
|
||||
deferred asset loading system, a sprite sheet packer with keyframe animation
|
||||
support, renderer that outputs vertex batches, a basic GPU wrapper (samplers, render
|
||||
support, a renderer that outputs vertex batches, a basic GPU wrapper (samplers, render
|
||||
passes, pipelines) and a networking layer backed by cURL on desktop and fetch APIs via the
|
||||
browser.
|
||||
</p>
|
||||
@@ -394,7 +412,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #DBAE55">2025 - CURR: Solid++</p>
|
||||
<p class=job-role style="border-color: #5B9BD5">2025 - CURR: Solid++ (Closed Source)</p>
|
||||
<ul class=keywords-list>
|
||||
<li>Python</li>
|
||||
<li>C++ (GUI)</li>
|
||||
@@ -410,7 +428,7 @@
|
||||
<tr><td><img src="assets/projects_solidpp.jpg"></td></tr>
|
||||
</table>
|
||||
<p>
|
||||
A complete rewrite of Liquid++ bot in Python with a native C++ ImGui dashboard which also
|
||||
A complete rewrite of the Liquid++ bot in Python with a native C++ ImGui dashboard which also
|
||||
targets the web using Emscripten for remote monitoring. This was an experiment into the
|
||||
viability of using Python for faster iteration on protocol updates on Chainflip as well as
|
||||
testing newer strategies more easily. It was also an experiment in using ImGui for web
|
||||
@@ -432,9 +450,9 @@
|
||||
</p>
|
||||
</div>
|
||||
|
||||
|
||||
<h3>Archived</h3>
|
||||
<div>
|
||||
<p class=job-role style="border-color: #DBAE55">2024 - 2025: Liquid++</p>
|
||||
<p class=job-role style="border-color: #E8976B">2024 - 2025: Liquid++ (Closed Source)</p>
|
||||
<ul class=keywords-list>
|
||||
<li>C style C++</li>
|
||||
<li>Chainflip</li>
|
||||
@@ -469,7 +487,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #519A8B">2023: Terry Cherry</p>
|
||||
<p class=job-role style="border-color: #E8749E">2023: Terry Cherry <a href="https://game.doylet.dev/terry_cherry/">game.doylet.dev/terry_cherry/</a></p>
|
||||
<ul class=keywords-list>
|
||||
<li>C style C++</li>
|
||||
<li>Raylib</li>
|
||||
@@ -477,8 +495,10 @@
|
||||
<li>2D Tower Defence-Esque</li>
|
||||
</ul>
|
||||
<table>
|
||||
<tr><td><img src="assets/projects_terry_cherry_1.jpg"></td>
|
||||
<td><img src="assets/projects_terry_cherry_0.jpg"></td></tr>
|
||||
<tr>
|
||||
<td><img src="assets/projects_terry_cherry_1.jpg"></td>
|
||||
<td><img src="assets/projects_terry_cherry_0.jpg"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
A 2-player local co-op top-down tower defence game developed over 4 weekends in a game
|
||||
@@ -500,15 +520,14 @@
|
||||
</p>
|
||||
<small>
|
||||
<ul class=citations>
|
||||
<li>Play Terry Cherry <a href="https://game.doylet.dev/terry_cherry/">game.doylet.dev/terry_cherry/</a></li>
|
||||
<li>Source Code <a href="https://git.doylet.dev/doylet/feely_pona">git.doylet.dev/doylet/feely_pona</a></li>
|
||||
<li>[1] Handles are the better pointers<a href="https://floooh.github.io/2018/06/17/handles-vs-pointers.html">floooh.github.io/2018/06/17/handles-vs-pointers.html</a></li>
|
||||
<li>[1] Handles are the better pointers <a href="https://floooh.github.io/2018/06/17/handles-vs-pointers.html">floooh.github.io/2018/06/17/handles-vs-pointers.html</a></li>
|
||||
</ul>
|
||||
</small>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #BEBF5E">2020: intc Software u128/256 bit port to C <a href="https://git.doylet.dev/doylet/intc">git.doylet.dev/doylet/intc</a></p>
|
||||
<p class=job-role style="border-color: #C4A35A">2020: intc Software u128/256 bit port to C <a href="https://git.doylet.dev/doylet/intc">git.doylet.dev/doylet/intc</a></p>
|
||||
<ul class=keywords-list>
|
||||
<li>C99/C++</li>
|
||||
<li>Open Source</li>
|
||||
@@ -527,7 +546,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #8DBCA2">2020: RaylibSIMD SIMD Software rendering in C <a href="https://git.doylet.dev/doylet/RaylibSIMD">git.doylet.dev/doylet/RaylibSIMD</a></p>
|
||||
<p class=job-role style="border-color: #9B8EC4">2020: RaylibSIMD SIMD Software rendering in C <a href="https://git.doylet.dev/doylet/RaylibSIMD">git.doylet.dev/doylet/RaylibSIMD</a></p>
|
||||
<ul class=keywords-list>
|
||||
<li>C99</li>
|
||||
<li>SSE2</li>
|
||||
@@ -547,7 +566,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #519A8B">2017: DTRenderer 3D Software rendering in C++ <a href="https://git.doylet.dev/doylet/DTRenderer">git.doylet.dev/doylet/DTRenderer</a></p>
|
||||
<p class=job-role style="border-color: #D4A574">2017: DTRenderer 3D Software rendering in C++ <a href="https://git.doylet.dev/doylet/DTRenderer">git.doylet.dev/doylet/DTRenderer</a></p>
|
||||
<table>
|
||||
<tr><td><img src="assets/projects_dtrenderer.gif"></td></tr>
|
||||
</table>
|
||||
@@ -573,7 +592,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #DBAE55">2017: Math Masher Math game for mobile <a href="luneaustralia/">doylet.dev/luneaustralia</a></p>
|
||||
<p class=job-role style="border-color: #E9B84D">2017: Math Masher Math game for mobile <a href="luneaustralia/">doylet.dev/luneaustralia</a></p>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/projects_math_masher_screen_1.jpg"></td>
|
||||
@@ -601,7 +620,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #C16358">2017: DCHIP8 Chip8 interpreter <a href="https://git.doylet.dev/doylet/dchip-8">git.doylet.dev/doylet/dchip-8</a></p>
|
||||
<p class=job-role style="border-color: #7FB5B0">2017: DCHIP8 Chip8 interpreter <a href="https://git.doylet.dev/doylet/dchip-8">git.doylet.dev/doylet/dchip-8</a></p>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/projects_dchip8_screen_1.png"></td>
|
||||
@@ -624,7 +643,7 @@
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p class=job-role style="border-color: #C16358">2016: Dengine 2D engine for asteroids <a href="https://git.doylet.dev/doylet/dengine">git.doylet.dev/doylet/dengine</a></p>
|
||||
<p class=job-role style="border-color: #C49A6C">2016: Dengine 2D engine for asteroids <a href="https://git.doylet.dev/doylet/dengine">git.doylet.dev/doylet/dengine</a></p>
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="assets/projects_dengine_screen_1.png"></td>
|
||||
|
||||
Reference in New Issue
Block a user