Tools/Frameworks: Flask, Angular, Jetbrains Suite, GitFork, Jira
Languages: Python, Typescript, HTML/CSS, Java
The image above is the home page for HydroVu. It consolidates all of the data thats being collected and presents it here. You can toggle locations, filter on time and parameters, and even check specific time durations for higher resolution and accuracy.
Non Technical:
HydroVu is a water monitoring visualization and manipulation tool. It communicates with telemetry devices that have been deployed in ground water, surface water, and coastal environments to take sensor data, and through the creation of htm files and reports, communicates with HydroVu servers to then display it. In addition to displaying it, we also provide a number of data visualization tools to help with high level overviews of the data. You can create dashboards for checking water source health at a glance, alarms for when values fall outside of a desirable range, calculated parameters for additional data triggering behaviors, importing and exporting files, and even correcting data that has been previously recorded. Though, that function is not built into HydroVu, but rather a separate product available to customers.
Technical:
HydroVu is a web application that employs an Angular front end, Python back end, and uses the google cloud ecosystem to monitor the health of transactions with the server. The python code leverages Flask based annotation for the routing layer, where we actually included documentation inside of newer routing classes. We also used Swagger to document some of the public API calls, and customers could interact with HydroVu with their own internal software. Finally, The component based front end was Angular, with the structure of our application adhering to a loose MVC paradigm. The model was our python based data coming in via flask routes, the view was our html templates and components, and our controllers were the services and Typescript files leveraged to make calls to routes and function as the intermediary.
Tools/Frameworks: Agile, Java Spring boot, Hibernate, Sonarcube, Mockito, GitLab
Languages: Java, Python, Javascript, HTML/CSS
More Exciting Description:
My role at Lockheed was largely in handling satellite metadata. Ensuring that individuals can report and use this data effectively. It had a API heavy focus, where our Java code and spring boot configurations were paramount to serializing and deserializing JSON files.
Unclassified Description:
We use an Agile process to handle development of the embedded FSW used to control and communicate with a number of satellites under the Overhead Persistent Infrared (OPIR) umbrella. We support the legacy CLS/SPICE contracts, which are maintenance contracts for OPIR satellites that have already launched, and we also support the SBIRS GEO5/6 satellites. We are helping to get it into the right orbit and behaving as expected. Finally, and arguably most important, we support the NextGen Geo (NGG) contract, which is where much of the team spends their time. Based on new requirements needed, we are updating the FSW to have new capabilities necessary for this Next Gen mission. Day to day, we are working to do detailed design in Cameo and write C++ FSW (and the associated unit tests) for the spacecraft that runs on top of our Real-Time Operating System (RTOS), which is Integrity, a product from Greenhills. We also write Python in the form of requirements-based testing, in order to verify that the software is performing as expected and meeting the requirements.
Tools/Frameworks: Salesforce, SaaS, LowCode
Languages: Java, Apex
The image above is a reporting dashboard. As a developer you can create custom code to tweak how the metrics are tracked, and how you can visualize data.
Description:
Cloud Coach is a software as a service company that is built on Salesforce. It leverages Salesforce's powerful tools to help companies manage anything from leads, and sales, to analytics and data visualization. I worked as a product specialist, but also spent time working with their developers. The Apex language and low code tools allow you to create custom widgets for specific business needs. You can automate certain processes, and track a lot of different metrics related to performance. I worked a lot with the product team, and was a certified platform app builder. All this to say that I knew Salesforce pretty well, and admire the many capabilities it has as a platform.
Tools/Frameworks: VsCode, Jupyter Notebook, Github, Diagramming Tools
Languages: Java, C++, Scala, Linear Algebra
This image is a classic raytracing example that was very similar to my programs output. You can see how adding properties to the materials and surfaces changes the way the light interacts with them.
I have created two ray tracing programs in my programming career, one with a focus on linear algebra, and one with a focus on design patterns. One in C++, one in Java. In both instances I had to understand the more complex operations that were being performed on the objects being rendered. Concepts like Denoising and Filtering, Secondary Specular Albedo, Shading, and Stochastic Texture Filtering. It was liberating to work with others to deconstruct the individual pieces of each project, and implementing design patterns like singleton, factory, template, and observer.