asyncapi / website

AsyncAPI specification website
https://www.asyncapi.com
Apache License 2.0
493 stars 639 forks source link

Take Jobs section to another level #212

Closed derberg closed 3 years ago

derberg commented 3 years ago

Reason/Context

Now we have jobs section on the website with just one offer that we published as folks working full time on AsyncAPI under Postman support -> https://www.asyncapi.com/jobs

Enable others to share their job offers

We need to open it up to others. We already saw at least 2 AsyncAPI related job offers from community. Would be great if they could just add their job offers to the list through a PR by creating new file like this https://github.com/asyncapi/website/blob/master/pages/jobs/ui-ux-dx-designer.md

Enable contributors/committers to specify that they are looking for a job

As we described here in Wishful Thinking section, the governance model we choose for AsyncAPI expects companies to be present in the TSC should hire existing individual contributors. Let us make it easier by adding a section where people can say they are for hire and provide proof of their spec knowledge and contributions.

Description

smoya commented 3 years ago

(optional depending on discussion) way to recognize of someone want's to give a job or actually is looking for a job

I think it's a good idea. However, I'm thinking about all that people who are opened to a new job but don't want to make it public because any reason (for example, they don't want to let their current employer know). It would be awesome if we can give the option of anonymized the process. I think it could be hard in case of showing contributions unless we don't show their usernames, however, it will be easy to see how's the user behind by just showing file history.

derberg commented 3 years ago

@smoya I was thinking about this use case that some people do not want to publicly admit they are opened for new positions, and this is completely understandable. This should not block others that are opened though.

We anyway wanted to have a view on the website where all the members of Technical Steering Committee are listed, and it will be clear who is affiliated with some company and who is there as an individual. This is already going to be a good source for headhunters to check out those that are not talking publicly about changing a job

AceTheCreator commented 3 years ago

@derberg I'm looking forward to implementing this feature, but if i have any question concerning this issue should i ask it below or in the slack channel?

derberg commented 3 years ago

I always recommend GH issues as in slack we lose history 😞 but feel free to ask in Slack if you want, no worries

I recommend focusing first on Enable others to share their job offers because this one Enable contributors/committers to specify that they are looking for a job I think needs more brainstorming

AceTheCreator commented 3 years ago

Sure this Enable contributors/committers to specify that they are looking for a job would definitely need more brainstorming. Should they first open an issue requesting to submit a job offer or they should just go straight ahead and submit a PR?

derberg commented 3 years ago

@AceTheCreator then can do both, if what to discuss first, then issue, if they have everything ready, let them head directly to PR to speed up the process. Most important is to make it clear requirement that this is only a place for AsyncAPI-related jobs

AceTheCreator commented 3 years ago

@derberg I'm curious about what the PR process is like. When trying to create a PR for a job posting, would they have to clone the repo and manually add jobs posting then create a PR? If so, isn't that kinda stressful? I'd suggest when they want to create a job posting, they should be redirected to a page with a markdown template with a review and when they're done, we automatically create a PR for them via their github account.

derberg commented 3 years ago

Most of those will be created by technical people, at least this is the expectation. GitHub is great enough to allow you to do the whole process of file creation and PR flow in the UI, without a need to clone the repo on local.

Having a template would be great though

AceTheCreator commented 3 years ago

@derberg I tried automatically generating a job template.MD when users click on the job posting URL but it seems impossible unlike the ones of issues and PRs. What I did was automatically copy the template to the user's clipboard when they click on the link that takes them to where they will post the job and all they have to do is paste the template. What did you think of this approach ?

derberg commented 3 years ago

@AceTheCreator I think it would be best to use native GH functionality here. Link to "new file creation". Advanced users can cancel and do usual fork + clone + the rest. Someone who does one time contribution can continue from there, where we link them.

GH supports passing content for a new file in a query param, even filename (but this won't be useful for us I guess, unless you have some idea how to generate the filename, if we even should do it).

Example -> https://github.com/asyncapi/website/new/master/pages/jobs?value=public+static+class+Callees%0A%7B%0A++++public+const+string+PrimaryCallee+=+%22Ghostbusters%22%3B%0A%7D

AceTheCreator commented 3 years ago

@derberg Have actually tried the above solution. There's a limit to the amount of character you can pass in the value query params and the value params does not even support .md content. That was why i was suggesting when they click on the link that takes them to the "new file creation" the template will automatically be copied to their clipboard, and all they have to is paste it in the new file field. P.S. When you pass the filename query params to the URL, it takes you one file path back from the folder Example -> https://github.com/asyncapi/website/new/master/pages/jobs?filename=test.md

AceTheCreator commented 3 years ago

Note: On the job website they'd be an indicator that tells them "on clicking this link, the job posting template will be copied to your clipboard"

derberg commented 3 years ago

There's a limit to the amount of character you can pass in the value query params and the value params does not even support .md content. That was why i was suggesting when they click on the link that takes them to the "new file creation" the template will automatically be copied to their clipboard, and all they have to is paste it in the new file field.

hmmm, you sure? I just tested such URL and worked fine, enough content for a good template in my opinion click this super long url

P.S. When you pass the filename query params to the URL, it takes you one file path back from the folder

looks like GH is a bit buggy here 😄

"on clicking this link, the job posting template will be copied to your clipboard"

in my opinion button should not be to long so description put in a tooltip.

derberg commented 3 years ago

interesting, I found filename bug workaround 😄

click

AceTheCreator commented 3 years ago

interesting, I found filename bug workaround

click

While this workaround seems to work, you cannot preview the file.

AceTheCreator commented 3 years ago

There's a limit to the amount of character you can pass in the value query params and the value params does not even support .md content. That was why i was suggesting when they click on the link that takes them to the "new file creation" the template will automatically be copied to their clipboard, and all they have to is paste it in the new file field.

hmmm, you sure? I just tested such URL and worked fine, enough content for a good template in my opinion click this super long url

Did you just copy the .md file and paste it into the value query params? cuz I just did that and it didn't display all the file content i pasted there click this url

AceTheCreator commented 3 years ago

in my opinion button should not be to long so description put in a tooltip.

Yeah, I'm just trying to explain there.

derberg commented 3 years ago

While this workaround seems to work, you cannot preview the file.

yeah, you are right, but anyway, even if that would work, we should not use such workarouds. Problem is that once they solve the issue, we are doomed and stuff would stop working 😄

Did you just copy the .md file and paste it into the value query params? cuz I just did that and it didn't display all the file content i pasted there

you cannot just copy paste, you need to first to encode it into URL. I quickly used https://www.url-encode-decode.com/

AceTheCreator commented 3 years ago

yeah, you are right, but anyway, even if that would work, we should not use such workarounds. Problem is that once they solve the issue, we are doomed and stuff would stop working

Can i use the suggested approach then which copies the template to the clipboard or did you have a better idea in which I can implement?

AceTheCreator commented 3 years ago

Sorry for the late reply tho 🙂

AceTheCreator commented 3 years ago

@derberg I was also thinking of making the search component reusable for the blog posts page or what do you think?

derberg commented 3 years ago

search component

what search component? you mean the filter that we would have for jobs, to have it on blog, to filter out articles by tags?

Can i use the suggested approach then which copies the template to the clipboard or did you have a better idea in which I can implement?

but what is wrong with using this. For me it is not a problem that filename cannot be passed.

How would you implement your solution? copy to clipboard on asyncapi.com domain is easy as you can put code for it on our website. How will you use it on GitHub though? you can't just like that inject code there for a user. Or I did not understand something?

AceTheCreator commented 3 years ago

search component

what search component? you mean the filter that we would have for jobs, to have it on blog, to filter out articles by tags?

Sorry I meant filter. And yeah i thought we could also use it for blogs.

Can i use the suggested approach then which copies the template to the clipboard or did you have a better idea in which I can implement?

but what is wrong with using this. For me it is not a problem that filename cannot be passed.

Ok then if you feel this approach is right then I'll implement it. How would you implement your solution? copy to clipboard on asyncapi.com domain is easy as you can put code for it on our website. How will you use it on GitHub though? you can't just like that inject code there for a user. Or I did not understand something?

I'm actually not copying to the clipboard from the asyncapi.com domain. once you click on the "new file creation" (a tooltip appears on the link on hovered saying job template will be copied to your clipboard) link and all you have to do is right-click on the file creation field and paste the template copied. Note the template will automatically be copied once you click on the link (I'd have a function in the codebase that does that for you automatically)

derberg commented 3 years ago

Sorry I meant filter. And yeah i thought we could also use it for blogs.

oh man, that woudl be lovely, the amount of content in blog area grew a lot, some filtering by tags would be amazing. For that though I suggest separate issue and PR so it is easier to review later

I'm actually not copying to the clipboard from the asyncapi.com domain. once you click on the "new file creation" (a tooltip appears on the link on hovered saying job template will be copied to your clipboard) link and all you have to do is right-click on the file creation field and paste the template copied. Note the template will automatically be copied once you click on the link (I'd have a function in the codebase that does that for you automatically)

ok, then best would be the direct link with template in URL using GH functionality. I think it would make a lot of sense to store the template somewhere in plain text too. So it is available for people that click on a button but also for people that fork repo and create files on local

AceTheCreator commented 3 years ago

Ok then. I'll have a folder called templates then inside it I'd have the job template. So anybody that forks repo can create files locally using the job template inside the templates folder. What did you mean by "So it is available for people that click on a button"?

derberg commented 3 years ago

What did you mean by "So it is available for people that click on a button"?

sorry, I was kind of referring to a local template as a thing that is an alternative for people that do not click on the button in the UI to add job posting. Sorry for later response, Easter time

AceTheCreator commented 3 years ago

sorry, I was kind of referring to a local template as a thing that is an alternative for people that do not click on the button in the UI to add job posting. Sorry for later response, Easter time

Oh yeah. Kindly review my PR then

AceTheCreator commented 3 years ago

oh man, that woudl be lovely, the amount of content in blog area grew a lot, some filtering by tags would be amazing. For that though I suggest separate issue and PR so it is easier to review later

@derberg can I create issue for this feature now and start working on it?

derberg commented 3 years ago

@AceTheCreator go ahead mate!

AceTheCreator commented 3 years ago

@AceTheCreator go ahead mate!

Okay