Bitlocker
Mitigating unauthorized data access on lost or stolen computers.
Sproutlabs was plant care and agriculture startup focused on smart water usage.
This job started off as a senior project capstone and later turned into a job offer which was cool.
Ucsc, at the time, offered a 2 quarter software engineering class where you learn the whole agile development process, on a project of your choosing. Additionally there were companies local to Santa Cruz and San Jose that sponsored different projects. I chose sproutlabs because two years before I took the course (~ 2019), California had a severe water drought.
Creating tech that results in improved usage of resources is a pretty cool to me. Also at the time C++ was my strongest programming language
and wanted to put that knowledge to use.
Sproutlabs was my first experience programming on a RTOS, and I learned alot about memory management.
I actually corrupted a few motherboard using containers from the STL (most of them aside from std::array use dynamic memory).
This was also the first my time writing javascript in a production environment.
Imagine the joy of debugging code in a language where:
null !== undefined
but
null == undefined
Here’s an even better one.
// If you think this prints 1 2 3 you're wrong
function scopeTest() {
var funcs = [];
for (var i = 0; i < 3; i++) {
funcs[i] = function() {
console.log(i);
};
}
for (var j = 0; j < 3; j++) {
funcs[j]();
}
}
scopeTest()
Long story short function scope is one the the main source of bugs in javascript.
If you’re having fun check this out.
Aside from the nuances of Javascript, I’ve heard more than a few people criticize agile development and the whole scrum process but honestly,when you’re on a team it really does help focus the teams goals into a concrete timeframe.
All things Considered I got alot from my time at sproutlabs