Hacker News new | past | comments | ask | show | jobs | submit | ajuhasz's comments login

Farther Finance | Senior Fullstack Engineer | REMOTE (US) / HYBRID (NYC Residents) | https://farther.com

We're a Wealth Management platform and advisory firm (RIA) that helps high-net-worth individuals and families achieve their financial goals. We're looking for a Senior Typescript Fullstack Engineer (over-weighted towards the backend) to join our Client and Advisor Product team. We just raised our Series C and you'll be joining a team of 5 other CAP engineers. We focus on lean teams that lean on functional programming to move fast and still act like a Series A company.

You'll be working on a full-typescript codebase and be responsible for designing features from a blank sheet, coming up with normalized relational tables, and writing functional (imagine TS code that looks like Haskell) backend and frontend code. Some more details: https://fartherfinance.notion.site/Senior-Typescript-Full-st...

Experience in finance/fintech is a must. If your experience is in the wealth management space or trading that is a huge plus. As this is in the senior range we're looking for 7+ years of experience or some kick-ass equivalent.

Please contact adam+nov-hn@farther.com with a copy of your resume and a brief introduction. As we're a detail oriented team please include a sentence or two on your favorite functional programming idiom, yes this is my brown M&M test.


Just a heads up, job postings for jobs based in NYC are now legally required to list a salary range.


Some information on the screen and that it's a transflective LCD and not an e-paper display as implied on the site.

Video: https://www.youtube.com/watch?v=7Ac-qtk2lmk


I think it's fair to call it e-paper since it's reflective. It's not e_ink_ of course, and I believe in a previous thread they mentioned it's not bistable (needs power to maintain the image).


If it doesn't have retention, then it's not. Otherwise, Gameboy's display also qualifies as e-paper.


Farther | Senior Backend Software Engineer | Fully Remote (US only) | Full-time

Farther is a Series B (we just raised our round in September) fast-growing wealth management firm and platform (though not a robo-advisor). We help families and people grow their wealth and feel confident they can accomplish all they want financially from today to tomorrow.

We’re looking for FP obsessive & strong type-loving Scala senior engineers (6+ years of professional/production experience). We’re on the Typelevel ecosystem (Http4s, Cats Effect, Fs2, Circe, etc.). You’ll be responsible for building composable micro-services, designing forward-compatible database schemas (we use CockroachDB) with efficient SQL queries, and APIs that delight your consumers but aren’t brittle. We have an interesting mix of domains from trading to portfolio management to automated account opening.

We’re a highly autonomous and fully-distributed company looking for product-minded engineers who want to get started from the first week deploying code.

Email us at nicholas.corvino@farther.com


Second-Order Thinking: What Smart People Use to Outperform

https://fs.blog/second-order-thinking/

A great primer on why just because it doesn’t make sense on why something is done a certain way, it doesn’t need a rewrite.


The Black Box Down podcast has a great episode on the crash of the Akron[1]

[1] https://roosterteeth.com/watch/black-box-down-2020-5-28


Two questions:

1) Do the functions "freeze" once the response body has been sent back? Is it possible to return a response to the user (for a quick API response) and then continue doing some background work? This is has been a source of pain with AWS Lambda based services like Vercel that freeze execution once the response has been sent.[1]

2) How does keeping a connection pool work between function invocations? For example using Prisma for the nice typed DB functions.

[1] https://vercel.com/docs/concepts/limits/overview#streaming-r...


> Do the functions "freeze" once the response body has been sent back?

Just checked with the Deno team. These functions should not be used as "background workers" - perhaps that is something we explore in the future. It will work for a short time in theory, but it's not guaranteed.

> How does keeping a connection pool work between function invocations

Supabase offers several options here. You can either use the API (PostgREST)[0] - an autogenerated REST API, or the connection pooler (pgbouncer)[1] which we offer with every project.

> For example using Prisma

Supabase is a popular database hosting service for Prisma users because of the built-in pooling - it's a great product, especially their typed interface.

[0] PostgREST API: https://supabase.com/docs/guides/api

[1] pgbouncer: https://supabase.com/docs/guides/database/connecting-to-post...


> These functions should not be used as "background workers"

Thanks for checking on it. We actually had to create a Cloudflare worker based "fire-and-forget" system to allow our Vercel functions to shoot off background tasks. Was hoping to replace that.

> Supabase is a popular database hosting service for Prisma

Agreed! We actually use Supabase as our backend for Willow[1] and use Prisma when writing backend functionality. It's been a real easy and fast process to use Supabase's JS client on the frontend to access data (with RLS!) and then Prisma+Supabase on the backend to modify data (with types!). We would love to allow user's to directly change data everywhere directly from the browser but we need to do some background tasks (sending notifications or updating related rows).

The dream would be to have a great DX experience around using insert/update triggers to call Supabase functions to run background tasks. Some type of Terraform-esque configuration (in a SCM) to set it up and keep it in sync would be awesome. We have some triggers that make http calls but we're limiting usage as keeping track of them outside of our other code isn't simple.

[1] https://heywillow.io


> The dream would be to have a great DX experience around using insert/update triggers to call Supabase functions to run background tasks

We have something for this: Function Hooks (soon to be renamed "Async Triggers")[0]. They are still in alpha, but the extension [1] is getting close. It was important to build something which works with PG background workers so that it's non-blocking. We'll make quick progress on this now that we've released Edge Functions.

> sending notifications or updating related rows

Tune in for tomorrow's announcement - it's related.

[0] Function Hooks / Async Triggers: https://supabase.com/blog/2021/07/30/supabase-functions-upda...

[1] https://github.com/supabase/pg_net


TBH the average user would be confused if their autoscaling workers were "online and billed for" if some random npm package or a coding accident had "background behavior". Firing off a background task into something similar to AWS SQS is really the right way for this scenario to be handled.


If you're speaking of the iOS simulator, that runs on x86, it doesn't emulate an ARM chip.


I think `|>` would actually be `&` in Haskell, it takes a value and a function.

`(&) :: a -> (a -> b) -> b`

https://hackage.haskell.org/package/base-4.12.0.0/docs/Data-...


There’s also google cloud’s distroless project: https://github.com/GoogleContainerTools/distroless

We’ve used the Node.js containers in production and investigated the other languages, but never deployed them. We did have some issues with devops not being able to log into the running containers, but always found a solution that I believe in the end was a better long term pattern for ops.


It’s under “Republic of Ireland”


Thanks. I found it there - otherwise, I couldn't have given the details above - but that's the name of the country's soccer team. The country's name is Ireland and that's what appears on my passport and in any official documents produced in any country in the world.


Apparently "Republic of Ireland" is officially the description but not the name of the state: https://en.wikipedia.org/wiki/Names_of_the_Irish_state

I guess it's similar to Germany being the "Federal Republic of Germany", or China being either the "People's Republic of China" (mainland) or the "Republic of China" (Taiwan).


Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: