HN user

XVincentX

104 karma

Italian Software developer in love with API and UI Designs

[ my public key: https://keybase.io/xvincentx; my proof: https://keybase.io/xvincentx/sigs/Dc66sQOXNLTWZ571XAIntxkLMroNPIk4smHMGzRBwUc ]

Posts35
Comments37
View on HN
apisyouwonthate.com 11mo ago

Oracle Shuts Down Apiary.io

XVincentX
2pts0
www.windowscentral.com 1y ago

Microsoft says goodbye to Seattle for Build

XVincentX
2pts0
www.ky3.com 1y ago

A 19yo woman graduated from high school with honors even though she can't read

XVincentX
18pts23
www.wsj.com 1y ago

Microsoft Is Forcing Its AI Assistant on People–and Making Them Pay

XVincentX
10pts4
www.nokia.com 1y ago

Nokia Acquires RapidAPI

XVincentX
3pts0
econjwatch.org 2y ago

McKinsey's Diversity Matters/Delivers/Wins Results Revisited

XVincentX
2pts0
techcommunity.microsoft.com 3y ago

Microsoft Defender Update removes all the desktop shortcuts

XVincentX
20pts3
dev.to 6y ago

Relocating during the Covid-19 pandemic

XVincentX
1pts0
dev.to 6y ago

I rewrote a project from TypeScript to use functional programming: what's next

XVincentX
1pts0
dev.to 6y ago

Return of investment in converting a TypeScript codebase to be functional

XVincentX
1pts0
dev.to 6y ago

Using functional programming JavaScript even if your company is against you

XVincentX
2pts0
dev.to 6y ago

The making of Prism – part 2, Finding the right abstraction

XVincentX
2pts0
dev.to 6y ago

When an error is not an exception – writing Prism

XVincentX
2pts0
dev.to 6y ago

A reviewer's perspective on getting your conference proposal accepted

XVincentX
1pts0
stoplight.io 7y ago

Prism v3 Adds OpenAPI 3.0 and Goes Open Source

XVincentX
1pts0
github.com 7y ago

Express Gateway 1.15.0 released

XVincentX
2pts0
apievangelist.com 7y ago

Kin Lane Steps Back as API Evangelist

XVincentX
1pts0
github.com 7y ago

Express Gateway v1.14.0 has been released

XVincentX
2pts0
news.ycombinator.com 7y ago

Ask HN: What happens to outstanding stock options?

XVincentX
1pts0
github.com 7y ago

Express Gateway v1.13.0 has been released

XVincentX
1pts0
github.com 7y ago

Express Gateway v1.11.0 has been released

XVincentX
2pts0
medium.com 8y ago

Node.js and Express Gateway for Real-Time Electric Vehicle Fleet Monitoring

XVincentX
2pts0
github.com 8y ago

Express Gateway v1.10.1 has been released

XVincentX
1pts0
github.com 8y ago

Express Gateway v1.9.1 released

XVincentX
1pts0
github.com 8y ago

Express Gateway v1.9.0 has been released

XVincentX
2pts0
github.com 8y ago

Express Gateway 1.8.0 is out

XVincentX
1pts0
github.com 8y ago

Express-Gateway 1.7.3 has been released

XVincentX
1pts0
github.com 8y ago

Express-Gateway 1.7 released

XVincentX
1pts0
github.com 8y ago

Express Gateway 1.6.0 has been released

XVincentX
1pts0
github.com 8y ago

Express-Gateway 1.5.0 released with JWT support

XVincentX
1pts0
  Location: Denver, CO
  Remote: Yes
  Willing to relocate: Yes
  Résumé/CV: https://linkedin.com/in/vncz
  Email: vnczes@icloud.com
API architect with 15+ years transforming how organizations design, build, and scale developer platforms.

At Microsoft, architected Graph APIs serving 100M+ users and established design standards for 200+ engineering teams. Previously led platform engineering at Stoplight and SentinelOne, specializing in OpenAPI tooling, developer experience, and building internal APIs that enable product teams to ship faster with confidence.

  Location: Denver, CO
  Remote: Yes
  Willing to relocate: Yes
  Technologies: Clojure, Python, TypeScript, Cloud Stuff
  Résumé/CV: https://linkedin.com/in/vncz
  Email: vnczes@icloud.com
Over the last 10 years I have worked for companies in the developer productivity space, in particular in the API Design space.

Currently I am working for Microsoft as an API Architect for Microsoft Graph where I help with the design of APIs very likely you have used, and curate the internal developer experience.

I might be a very good fit for you if

- You are looking for somebody with encyclopedic experience in software development

- You need somebody to dig into a codebase in a bad state and bring it back to excellence

- You need somebody to improve the developer experience of your users, whether they are internal or external

- You need somebody with very strong API Design Skills

- You need somebody that is very well versed in Cloud Environments such as AWS/Azure/GCloud

Location: Denver, Colorado

Remote: Yes, or hybrid

Willing to relocate: Depending on which target state, YES

Technologies: Clojure, TypeScript

Résumé/CV: https://www.linkedin.com/in/vncz/

Email: vnczes@icloud.com

For the last 10 years I have been working primarily for companies building tools for developers involved with large HTTP APIs (Apiary, Stoplight to name a few). Some of the open source tools you currently use when dealing with OpenAPI might have been written by me.

Currently I work as API Architect where I help design and ship big APIs, work in internal tools and help with the giant API Gateway that serves billions of requests per day and coordinates the various services for ${bit-company}

I can help in architecting very big systems, on the cloud or not, building tools for internal and external developer productivity and I am particularly good when thrown in codebases with a lot of technical debt and bring them back on a path to excellence.

Who wants to be hired

  Location: Denver, Colorado
  Remote: Yes, or hybrid
  Willing to relocate: Depending on which target state, YES
  Technologies: Clojure, TypeScript
  Résumé/CV: https://www.linkedin.com/in/vncz/
  Email: vnczes@icloud.com
For the last 10 years I have been working primarily for companies building tools for developers involved with large HTTP APIs (Apiary, Stoplight to name a few). Some of the open source tools you currently use when dealing with OpenAPI might have been written by me.

Currently I work as API Architect where I help design and ship big APIs, work in internal tools and help with the giant API Gateway that serves billions of requests per day and coordinates the various services for ${bit-company}

I can help in architecting very big systems, on the cloud or not, building tools for internal and external developer productivity and I am particularly good when thrown in codebases with a lot of technical debt and bring them back on a path to excellence.

  Location: Denver, Colorado
  Remote: Yes, or hybrid
  Willing to relocate: Depending on which target state, YES
  Technologies: Clojure, TypeScript
  Résumé/CV: https://www.linkedin.com/in/vncz/
  Email: vnczes@icloud.com
For the last 10 years I have been working primarily for companies building tools for developers involved with large HTTP APIs (Apiary, Stoplight to name a few). Some of the open source tools you currently use when dealing with OpenAPI might have been written by me.

Currently I work as API Architect where I help design and ship big APIs, work in internal tools and help with the giant API Gateway that serves billions of requests per day and coordinates the various services for ${bit-company}

I can help in architecting very big systems, on the cloud or not, building tools for internal and external developer productivity and I am particularly good when thrown in codebases with a lot of technical debt and bring them back on a path to excellence.

  Location: Denver, Colorado
  Remote: Yes, or hybrid
  Willing to relocate: Depending on which US state, YES
  Technologies: Clojure, TypeScript
  Résumé/CV: https://www.linkedin.com/in/vncz/
  Email: vnczes@icloud.com
For the last 10 years I have been working primarily for companies building tools for developers involved with large HTTP APIs (Apiary, Stoplight to name a few). Some of the open source tools you currently use when dealing with OpenAPI might have been written by me.

Currently I work as API Architect where I help design and ship big APIs, work in internal tools and help with the giant API Gateway that serves billions of requests per day and coordinates the various services for ${big-company}

I can help in architecting very big systems, on the cloud or not, building tools for internal and external developer productivity and I am particularly good when thrown in codebases with a lot of technical debt and bring them back on a path to excellence.

Swagger (OpenAPI 2) and OpenAPI 3 never supported JSON Schema. They support a subset of the draft 4 with custom additions. OpenAPI 3.1 added support for additional schemas where you can use whichever draft you want.

Disclaimer: I work for Microsoft as an API Architect.

I am not working on this specific API, so I am not going to comment on anyway. I hear your complains about Microsoft API guidelines (which is an entire different conversation) but I wanted to add my two cents with regards to JSON Schema.

The problem that I have been having with JSON Schema since forever - is that the data that is being modeled is complected with contextuality of its usage. For instance, if I have

type user = { name: string, surname: string, password: string }

IN JSON Schema it is very hard to give contextuality on it, and most of the times involves having two separate types.

Here is an example:

If I am creating a new user, then name, surname are mandatory, while password is not because the system is autogenerating it. If I a logging in - then I want ALL of the fields.

As of today, it is very hard in JSON Schema to express this.

Basically speaking, I am arguing that the data structure is a thing, another one is its usage in a context, where there can be requirements and complicated validation logic involving even other fields

In my experience, the only thing that has been very very close to what I have been looking for when modelling systems is Clojure. Most of the people laugh to my face when I say that primarily because it is a LISP 2 and yet... In particular, spec (and even better spec2) have the tooling to express data structure as sophisticated as we want without a type system and with the contextuality constraints that are fundamental for a real type reuse.

SentinelOne | Backend Developers | Remote (US) | Full-Time | https://sentinelone.com

After the successful launch of the new Singularity Marketplace, I am looking for an engineer to join our small Apps engineering team in the United States. We want somebody that has been in the trenches working with medium/big systems, loves functional programming (even if is afraid to say that loudly) and has a solid API background.

You’ll be working with a variety of partners and their APIs to supercharge SentinelOne’s threat analysis and detonation. Sometimes we’ll be dealing with nice OpenAPI files, semantic status codes and structured error responses; sometimes the documentation is an email, every API call returns 200 (even if an entire server farm has just crashed) and payloads are so nested that you’ll need a GPS to figure out where you are. Are you up for the challenge?

If you:

* Have experience with functional programming languages (Clojure, Haskell) or strong desire to learn

* Have experience with Node and TypeScript or strong desire to learn

* Have experience in designing and implementing (real) RESTful APIs

* Have used and survived other people’s API

…and you’re interested in

* Designing and implementing public APIs for external users

* Build and maintain user SDKs in different languages

Then please email me at vncz at SentinelOne.com and let's chat.

SentinelOne | Backend Developers | Remote (US) | Full-Time | https://sentinelone.com

After the successful launch of the new Singularity Marketplace, I am looking for an engineer to join our small Apps engineering team in the United States. We want somebody that has been in the trenches working with medium/big systems, loves functional programming (even if is afraid to say that loudly) and has a solid API background.

You’ll be working with a variety of partners and their APIs to supercharge SentinelOne’s threat analysis and detonation. Sometimes we’ll be dealing with nice OpenAPI files, semantic status codes and structured error responses; sometimes the documentation is an email, every API call returns 200 (even if an entire server farm has just crashed) and payloads are so nested that you’ll need a GPS to figure out where you are. Are you up for the challenge?

If you:

* Have experience with functional programming languages (Clojure, Haskell) or strong desire to learn

* Have experience with Node and TypeScript or strong desire to learn

* Have experience in designing and implementing (real) RESTful APIs

* Have used and survived other people’s API

…and you’re interested in

* Designing and implementing public APIs for external users

* Build and maintain user SDKs in different languages

Then please email me at vncz at SentinelOne.com and let's chat.

  Location: Austin, TX
  Remote: Yes
  Willing to relocate: Yes
  Technologies: TypeScript, Clojure
  Résumé/CV: https://linkedin.com/in/vncz
  WebSite: https://vncz.codes
  Email: hey {at} vncz {dot} codes
Or, better:
  (def vncz {:location "Austin, TX"
             :remote true
             :relocate true
             :tech #{:typescript :clojure}
             :resume "https://linkedin.com/in/vncz"
             :website "https://vncz.codes"
             :email "hey {at} vncz {dot} codes"})
Over the last 6 years, I've been mostly working for SAAS companies providing tools for API Developers, contributing heavily on the engineering side as well as managing small teams.

I help organise the APIDays (https://apidays.co) conference series.

I'm a Google Developer Expert, Auth0 Ambassador and a Microsoft MVP in Developer Technologies.

I infrequently write what I learn during my work at https://dev.to/vncz

I'm looking for a lead/principal developer position. If Clojure even better, but TypeScript would do the job also.

I'm not an expert in databases, but I am starting to think that building an interface primarily designed for humans (that's what SQL is) as the main medium to interact with the database maybe in retrospective was not a winning idea.

I'm not criticising anybody here (I am literally not in a position of critiquing anything); SQL was created probably 40 years ago and it probably made sense back in the times.

My point is that you can always build a human interface from a machine one; the reverse is not that easy. ORMs are a (failed?) attempt to do so.

I would very much push for computer-language integrated query support — (such as Datalog or Linq), and that is what the database server should be accepting as input, instead of a raw string.

Although a lot of people hate MongoDB, I've personally felt way more productive expressing queries with their query document system rather than using SQL.

Fixing design flaws with other software ain't gonna bring us that far maybe.

  Location: Austin, TX
  Remote: Yes
  Willing to relocate: Yes
  Technologies: TypeScript, Clojure
  Résumé/CV: https://linkedin.com/in/vncz
  WebSite: https://vncz.codes
  Email: hey {at} vncz {dot} codes
Or even better…
  (def vncz {:location "Austin, TX"
             :remote true
             :relocate true
             :tech #{:typescript :clojure}
             :resume "https://linkedin.com/in/vncz"
             :website "https://vncz.codes"
             :email "hey {at} vncz {dot} codes"})

Over the last 6 years, I've been mostly working for SAAS companies providing tools for API Developers, contributing heavily on the engineering side as well as managing small teams.

I infrequently write what I learn during my work at https://dev.to/vncz

I'm looking for a lead/principal developer position. If you're working in Clojure even better, but TypeScript would do the job also.

I'd love to see them out of the language. I do not have evidence/document supporting this, but I think it was ultimately a failed attempt of copying the C# feature ignoring the fact that JavaScript works differently.

Correct, but that does not solve the other issues I pointed.

Additionally, const enums DO NOT have an associated type. That is a problem in libraries, since users cannot reuse the type definition around (it back ports to a string or a number)

My main issue with Enums in Typescript:

1. Because they have a runtime representation, I cannot do `import type` — and I am importing the entire file (which might have a side effect). While it's still not justified (ideally importing should not do anything) the reality in JavaScript is different.

2. I can swap the enum value with a number or a string and it would still work, even if invalid. See https://www.typescriptlang.org/play?#code/KYOwrgtgBAggxgFwJY... for an example

3. On the other hand, I cannot use strings to create an Enum (https://www.typescriptlang.org/play?#code/KYOwrgtgBAygLgJwJY...) — this is the exact opposite of n. 2

4. Duplicates are possible: https://www.typescriptlang.org/play?#code/KYOwrgtgBAIghgTwPI...

I love this. It reminds me a lot of the work I did in Prism to port what I learned using Haskell in TypeScript: https://dev.to/vncz/forewords-and-domain-model-1p13

Reading the article, I do have some suggestion:

1. Never use isLeft or isRight; they break the composability of the monad instance — use `fold` instead, as late as possible

2. Do not use Enum in TypeScript — they have a runtime representation in JavaScript that's likely messing up a lot of things. Use string unions to accomplish the same result

  Location: Austin, TX
  
  Remote: Yes
  
  Willing to relocate: Yes
  
  Technologies: TypeScript, Clojure
  
  Résumé/CV: https://www.linkedin.com/in/vncz/
  
  Email: hello@vncz.codes
I am looking for a Principal Engineer/Architect role where I could help (and ultimately own) to design small-medium size systems. A real opportunity of using Clojure would be a small +, but I can stick to Node/TypeScript/JavaScript if the role is particularly interesting.