47 karma · joined July 26, 2014
github.com/howie-code/temporal-fun
npmjs.com/package/temporal-fun
Location: Seattle
Remote: yes, but not necessary
Willing to relocate: no
Technologies: DevOps, Kubernetes, Rust, Ruby, Typescript, Svelte, VueJS
Résumé/CV: https://anowell.com/portfolio
Email: anowell (at) gmail
Part-time only!I'm bootstrapping a new business (a makerspace), but would love to complement it with a part-time role. 13 years of experience loving both IC and director type roles. Scaffolding/architecting new distributed system components, cloud operations, developer experience tooling, and mentoring have always been front and center for me, but I'm fairly versatile, even loving documentation and process development. Best fit is probably a role where I can help get something off the ground and mentor someone more junior to take ownership of it.
I'd take a pretty steep discount from my historical rates for the right part-time role and schedule flexibility.
That said, I agree that more people will want to work in higher level languages, though I kinda suspect "most" are going to still prefer Javascript for the forseeable future - so I sorta see JS compiling to WASM as inevitable.
I've been building a [super early/experimental] rust frontend framework (https://github.com/anowell/quasar), and going through Javascript to manipulate the DOM is the cause of plenty of frustrations and limitations, so I'll be keeping an eye on this.
For workloads where you aren't making full use of system resources at all times, then the economy of scale provided by our compute cluster often results in compute-per-second being more cost effective even before considering the costs of managing your own infrastructure. It fits into the "serverless" trend, FWIW.
Each algorithm in our marketplace has a cost calculator that breaks down the price using a per-API-call estimate. If you have a specific workload in mind, feel free to reach out and we'd be happy to further discuss the pricing.
That said, over 75% of algorithms on the site are open source. Perhaps that's not obvious enough?
[disclaimer: I'm an engineer at Algorithmia]
That's a fair question.
Rust was a personal itch, but it also provided a good test for supporting native compilation while providing an excellent dependency management story. We learned a lot from Rust that will apply to C/C++ and we're talking about how we want to address the dependency management story of that ecosystem (and we still need to build a C/C++ client library).
Scala support came alongside Java (and because we're a Scala shop). Ruby was low-hanging fruit because the client already existed. Coffeescript support would be pretty easy to add on top of Javascript pending some demand and interest. C# (on mono) and Go are both interesting languages for us to reasonably land that didn't make this round.
We definitely have more to announce on this front soon. And by all means, we love hearing our users request their favorite languages. :-)
Code reading: In <10 minutes, I can have a basic grasp on someone's ability to read, understand, and explain new code. Usually simple examples of <50 LOC in the language of there choice. I've used it a lot in phone screens (just providing URL to the code) and gained the reputation of being able to predict fairly well the quality of a code submission to a "take-home coding challenge".
Whiteboard: in ~15-20 min I can get a grasp on how someone takes a vague problem and works toward a solution and how they are to work with. I'm actually less concerned about code, and more about how they handle ambiguity, flesh out requirements, communicate issues, and think holistically without the distraction of a compiler/syntax-highlighter/etc. I think whiteboarding is slightly more about communication than coding and can provide a lot of context in a short amount of time. Of course, not all whiteboarding interviews are equal - I spent plenty of days complaining about certain whiteboarding interviews, and now I'm clearly biased to believe that mine take the good and leave behind [most of] the bad.
Code pairing. Takes ~1hr to understand and modify some piece of code in a meaninful way. (Maybe there are simpler versions - but in an effort to feel more "realistic", I've always focused on changing a requirement to the candidate's code submission). It's more realistic than whiteboarding, but it carries the [real-world] overhead of getting syntax right, finding docs for a specific function, and other surpries that come up (network issues, desktop crashes, editor problems, etc.). I've seen it work well when there are several interviews that focus on very different skills, but inevitbaly after such interview, I've often felt like I had a very narrow view of a candidate.