and two sites called Liquid and Goodforces,
as well as a site called Binary Search.
So yeah, and after that I moved to web industry.
I learned React and used it with TypeScript
and Rescript and JavaScript.
And then I moved to backend, used NestJS.
And currently I'm learning Ruby on Rails.
I like to contribute to on-premise projects,
as you can see on my GitHub.
Yeah, it's like, that's about me briefly.
Gotcha, and you've been working
as a freelancer, as you said, for nine months here?
Yeah.
Okay.
What kind of projects are you working on?
It's like a website used for exchanging
or sending, like, how can I explain?
Like, sending bills or sharing bills,
or like, one second, let me translate, please.
Yeah, it's like for sharing invoices with other people.
Okay, cool, yeah.
And how are you getting that work?
Is it just finding it online, or?
Yeah, yeah, it's a website called that work.
Okay.
Cool.
And you've been said to have been working
for a small company for two months, I think?
Yeah.
And what, is that the company you're talking about?
Well, it's a company, it's like a private client for me.
For me, like, as they are giving me some part-time work,
like sending me some tasks to react, improving site,
and improving performance, improving layout, and so on.
Okay, cool.
Great, and all right, so let's talk
about this community platform you made.
I have a lot of questions.
Yeah, awesome.
Cool, so this is just something you built for fun,
or is it as a project?
What was sort of the reason behind it?
Yeah, I built it to practice with my friends.
I was on the front-end side,
and the other guy was on the back-end.
Okay.
He's Hassan, and he's owner of Zarebo.
Okay, so you did the front-end coding, that's great.
Yeah.
And how, like, if you had to work on the back-end,
how comfortable do you feel working on that back-end?
Well, actually, I have developed a private site
for during my internship.
I used NestJS, and like, I did the whole site on my own,
so I think I'm very comfortable using back-end.
Okay, so if you had to create new API routes,
or new columns and databases.
Yeah, I created APIs and storing data in database.
I actually used Postgres for this case,
and I remember that I have used GraphQL in some project.
I also, like, stored the files in AWS S3,
and giving them back to the client side.
Okay.
Great, have you done, as you've worked with S3,
have you worked with any kind of Web3 technology?
So, like, anything with blockchain, anything like that?
Well, I think this topic is very interesting,
and I'm eager to learn it in the next few weeks.
Okay.
I'm actually planning to.
Yeah, because there's lots,
so many ways to use blockchain now,
but that is, I was just curious
if you had touched any of that.
So, looking at the site here, I think it's great,
and you guys just did this project
as, like, an open-source platform?
Like, it's-
Yeah.
Cool, so let's talk through, like, how did you,
like, so you said you did the front-end.
Talk through, like, some of the tech stack
you used for the front-end.
Like, what type of tricks?
I'm like, just talk me through, like,
what frameworks, platform, like,
just what was your approach?
So, you had one person working on the back-end,
and then, you know, you-
You told him, hey, I'll build the front end.
Like, how did you, what was your process like with the design,
the layout, the frameworks, the front end, anything?
Yeah, for the front end, I used React and I used a UI library called Material UI.
For routing, I used the React router.
For state management, I used Redux, but nowadays I prefer to use Recoil.
It's much more convenient and much more than the way it was this.
So you said you're not using Redux.
What did you say you're using instead?
Recoil nowadays.
Recoil.
Yeah, it's built with Facebook team too.
If you are interested in learning it.
Oh, Recoil.
Okay, cool.
I have not played with that.
Yeah, it's much easier than Redux and it's more performant, as I remember.
Yeah.
What else?
Yeah, and for the animation, I used the Lottie animation.
What animation?
Yeah.
If you want to select two.
And for data fetching, I used, I don't remember, actually, it was like nine months ago.
One second.
No problem.
Okay.
Let's walk through the code together.
Okay.
Yeah.
If you want to share your screen or anything, that's fine.
Yes.
Okay.
One second.
Okay.
I can see your screen.
I think you're muted.
I don't know if.
Did I lose you?
Can you hear me now?
There you go.
Yep.
You were muted.
Oh, one second again.
There you go.
Yep.
I can see your screen.
Oh, it's muted now.
There you go.
Now you're unmuted and I can see your screen.
Oh, can you hear me now?
Yeah.
Oh, can you share, like, can you share your screen and I will walk with you through the code?
Okay.
Uh, let's see.
It was, I think you had a link here.
Yep.
Okay.
Here I can, uh.
Okay.
If you click the one front end.
Yeah.
You should be able to control it.
Oh, I can control it.
Uh, yeah, yeah.
Click on the front end.
Uh, no, no, no.
Go back.
Oh, I'm letting you do it.
How can I do it?
Uh, you're clicking on it now.
Oh, okay.
So, uh, okay.
Uh, we use double look client for, uh, data fetching.
Uh, as I said, we use the GraphQL on the backend.
So we use double look client.
Uh, for animation, like instead of Axios, you used Apollo.
Yeah.
It's much better.
And, uh, like for, sorry, why did you go with that?
Every Axios.
Well, uh, somebody, uh, recommended it for me.
Uh, I didn't know any.
alternative at this time.
So I went through it, like, do you have any other recommendation?
No, I'm just curious why, uh, like what, what did you like about it?
Uh, well, it was similar and it was like giving you a lot of, uh, functionality
like using subscription and mutation.
Yeah.
So it was handling a lot of complexity for you.
Okay.
Uh, we used, uh, you sound for like getting sound when you click on, uh,
when you, uh, send a message or when you get a notification.
Okay.
Uh,
here, yeah, this animation we used with, uh, we'll look like, uh, okay.
Uh, we used a library for this, uh, emoji is called emoji.
One click and you, and you send.
So use that date functions.
Yeah.
Okay.
You use like moment JS or something?
No, no, no.
It's called the, uh, yeah.
Where is that?
I'm sorry.
Right here.
Uh, this one right there.
Yep.
It's called the date functions.
Okay.
Oh, line 14.
Yeah.
Okay.
Uh, let's go back to Maria.
So, um, tell me like, so, I mean, this looks great.
Like, did you guys have a designer?
Did you design it?
What was the front end?
Uh, we didn't have a designer, so we invented it from our head.
Okay.
And tell me, walk me through that process.
Like you're staring at a blank screen, like what's your process to
get a, like this messaging page built?
Okay.
Uh, you think about the main components, like, uh, you, you want to, uh,
message books and the way you want to choose, uh, uh, previous messages.
And they also wanted to show available persons or people to message.
Uh, so you try to mock how Twitter and Facebook handles this.
Uh, in the bottom, you have emoji and send, send the button.
So like you draw some mock mockup on the paper and do you implement
it using, uh, material UI and so on.
Good answer.
We are, um, so if you haven't, I don't think you mentioned you had,
um, looked at the shape up process.
Um,
well, yeah, yeah, yeah.
I saw that you were talking about shape up process with someone, but I couldn't
complete the whole video because it was very long and, uh, it was doing some
stuff, but I will continue it later.
No.
Yeah.
And check out, if you go to basecamp.com slash shape up, um, I'll put that in the
chat here.
Um, uh, you can, um, there's a, the whole book is there.
It's just something worth checking out.
Um, it's like, it's worth probably knowing if that, if this is how you're
working, like you'll love the workflow of shape up, um, because it's exactly what
you just did.
Like, it was like, put it on a piece of paper and then go straight to code.
Like there was no, you know, UI mockups and Figma and any of that.
It was like very simplistic.
And then the goal to get it functional as fast as possible and working, and then
you can go back and refine design later.
Um, yeah, so I, that is cool that you did it that way.
Um, so, uh, yeah.
What are your plans?
Like with, this was just like something you guys did for fun.
Are you, what's the plan with this?
Well, uh, I don't think that we will continue supporting or
maintaining this project anymore.
Uh, I'm planning on doing some project with Ruby on Rails for backend and
React frontend and maybe trying to remix a framework.
It's very new.
Uh, and it's eye catching, so I would try it very soon.
But, uh, yeah, that's it.
So it was just for practice.
Yeah.
Uh, we aren't planning to continue maintaining it since we
don't have enough users, you know?
Yeah, exactly.
Well, we have, uh, we have users, um, not tens of thousands, but we have
thousands of users on our platform.
Um, and we have paying clients, which is always a good thing to have.
Um, so we have about a hundred platforms that are being supported by our software.
Um, but.
One of the goals we had with tribe is to have it feel very much like a social network.
And just seeing this was exciting because you guys have kind of built a version of it with just the little things like the liking, you know, sharing stuff.
Being able to comment. I think you guys had comments here. Yeah.
Now, and what I'm like this is a great level of simplicity. And so, you know, there's even like, I don't know if this even works, I forgot password but we don't have a forgot password.
I don't think you do either.
But the Google authentication, we're doing that as well.
So just like a lot of overlap.
I like the idea of the pages.
I crashed it. Whoops.
It's okay. It's a.
And I think I did this Bruce's group. There we go. So you can join. So this is actually kind of funny how similar it is.
So if I go to groups, we have this groups functionality, like you can go into like roadmap.
Oops, or partners here.
And then you can join. There's like members in a group there's a discussion, like, this is awesome.
Someone can post stuff, upload an image. It's very very very simplistic.
Like no one has really spent any time on the front end. I think the, you know, we had someone sort of mock up what, what it could look like.
So this is sort of a little bit more like a social network looking site.
We haven't implemented all of this design yet this is a lot. This is kind of where we want to go with it though.
So, yeah, I just this felt very complete.
Really what we do mostly on our site right now is just like we stream videos.
And like it's basically like a version of Netflix right it's not very community driven.
Like I love the profile idea, the idea to follow people we actually have all of this in the database, because our platform also acts as a CMS for other mobile apps.
And so we have some of these back end functionalities already we just like haven't put a page together for a user can. So like, this is how close we are to it if you go here you can actually go to edit profile.
The picture cover photo about save it but there's no like front end page where this goes just yet.
So, you would assume that if I like clicked on this username, so just like it's doesn't, it's like it's just not finished right there's like lots of little things like that.
Our process would go is very much like following the shape up method so we, we do everything in notion, we would.
So we have for this is our product for tribe.
And we have so that here's like inbox and email notification so we basically scoped out like a four week project for this. We talked about like, what's the problem, so you could sit and like read this we don't have to get on a long call and explain
it you could read through like what what the problem is. And then here's some of the solution of how we're thinking about it and you see we literally just took screenshots of other apps.
And there's other places where I just like did like ugly like whiteboard drawings of what I think it should look like.
And then we talked about rabbit holes, and then anything that's out of bounds like hey we're not going to touch these two things, or we're not doing this in this project.
So we spent some time shaping the project up and thinking it through and here's how the best way we could do it.
And then from there we, you know, we'll, like, it just sits in this shaped list until we feel like it's ready to work on.
And then we'll actually go and implement it and knock it out so starting out like we probably would want some help on this work.
But anyway, that's that's just a little bit of process but definitely go check out the shape of book, and it'll make a lot more sense.
But I have some questions for you.
Yeah, like, who's the ideal candidate for your company?
What's what sorry?
Like, who is the ideal candidate for this job?
For this job?
Yeah, in your opinion.
Yeah, so we have with each of these projects that we're looking at here we have a single developer so really, it needs to be someone who's a full stack, who feels really good about each project.
fully good about the front-end and the back-end.
Yeah.
What do you use for back-end?
So right now, we use Redux, Node.js, and Express, I think.
Yeah, I used it before.
And a lot of the things initially we would be doing
is we're kind of working on an existing application.
So I can show you here.
Yeah.
So I mean, this is all stuff.
We use Tailwind a lot.
Yeah, I like Tailwind.
Yeah.
So we have Tailwind UI has their own component library,
which we use.
So there's Redis.
We use that.
That's for caching stuff.
Let's just see here.
Yeah, I know it.
So there's Express, group routes.
Let's see here.
Um, yeah, we're using Axios.
And yeah, MySQL for the database.
I believe in that.
I'm talking with Facebook.
Yeah, I understand.
Yep.
Yeah, I don't know.
So again, some of the stuff like this
is very much like we work on this project when
there's time.
And normally, we're working on client work
that tends to take priority.
So that was just, I think, what I like, my qualification
to best candidate and why I was interested in talking with you
is like someone who can go from nothing
to like a pretty half decent looking app.
We're not going for like the world's most,
we're not trying to win a design awards with our apps.
We're trying to make them really functional.
And I think a lot of development companies
go down a rabbit hole of like this crazy level of design
that's not really needed.
We just need something that's very usable.
We focus a lot more on UX.
But this is also pretty at the same time.
Like I love the animations.
It's just a little bit extra attention to detail.
And so qualifications, like I don't really
care what school you went to or if you went to school or not.
Like I'm looking at the work that you've done.
So this was like pretty much all you
had to put on your job CV.
So yeah, resume.
So this is great.
I think I would be curious, how long did it
take you guys to work?
How long did you work on this?
It was one month, only one month.
Oh, just one month?
Yeah.
OK.
That's great.
You just kind of worked on it full time?
Can you repeat, please?
You just worked on it full time for a month?
Yeah.
OK.
That's great.
So you're looking for some freelance stuff now.
And I'm looking for full time, too.
OK.
Yeah.
And our team, our guys are full time.
They're set up as contractors full time.
But they're part of the team.
They've been with us for years.
So all that comes with it as well.
And curious, what's kind of your, do you
have a target rate you're looking for as far as doing 30?
We kind of work on about 30 to 35 hours a week.
We don't try and ask you to do two weeks of work in one week.
We want to be sustainable.
Well, I don't mind working 30 hours per week.
30?
Yeah.
But I can work up to 40 and even 50.
Yeah.
OK.
Yeah.
We just don't want to kill you.
There's always, you can go as much as you want.
There's no limits.
But we just don't plan.
Like when we're talking about a one week project back here,
we're thinking like really 20 to 30 hours a week.
So it basically leaves a lot of margin
just for things that are going to come up.
And we may run into issues and stuff.
So trying to leave some margin there.
But yeah, we're looking for a lot of work.
So we have some other, like there's some cool projects here.
We have this blockchain streaming integration
we're working with to do live video streaming
on the blockchain using this live peer tool.
So yeah.
Oh, so did you have like a target rate you're looking for?
If we're doing like 30 hours a week?
No, no, I don't have a target rate, but as I said, I can work up to 50 hours per week.
Okay.
What are you, like, are you, cause you said you're doing some freelance work now.
Like what's like, what are people paying you an hour for that?
You mean how much they are paying for me?
Yeah.
Like, are you being paid by the hour?
Yeah.
I'm being by hour, like $12 per hour.
I think it's, it's very low rate, but it's very low rate.
Yeah.
I don't know.
We actually have not worked with anyone from Egypt before, so I just don't know.
Like if I can ask, like, how much do you pay for?
More than that.
Okay.
Does that make sense?
Yeah.
I mean, I don't think we would start you less than 20 initially, I, again, we don't, I don't
know what you could, I mean, I've seen, I can see this, I've, you know, we've only talked
for 30 minutes, so I would like to, yeah, let me think, let me think about a next step.
What I, what I, are you available like to start soon on something?
Yeah.
Like, can I start immediately?
Okay.
What I'll do is like, let me think of a project that would fit, you know, nice, like a one
or two week project.
We can kind of agree, Hey, let's, let's plan on like 50 hours or so.
Yeah.
And so, you know, so you can budget for that.
And then we'll, we'll do that as a single project.
Let's then, you know, our team can review your code.
We can see what, you know, maybe do a call where we just review how, how and why you
did certain things.
And, you know, and then go from there and if it works out great, then we can just do,
you know, just set up something that's, you know, monthly, and then you just, we'll just
work the hours and we just typically pay our teams like at the end of the month for all
the hours they worked, but we'll definitely, I'm not, we have people working all over the
world.
We try to standardize as much of the pricing.
So if you were doing anything for less than 20, like you're going to love working with
us because we don't pay, we pay well, you know, compared to that.
So like, yeah, no one, even like admins on our team don't make that, don't get paid that.
So developers definitely, there's lots of room for growth and it really just comes down
to, can you like write the code?
Is it organized?
Is it well-labeled?
You know, does it look good?
All those things.
So we can, and I'm, I will, we'll just keep increasing rates until they like, you know,
for as much as you're bringing to us.
Cool.
So that's a good thing.
Again, I normally, we normally take more, like more time doing longer interviews and
doing technical interviews, but again, I'm very impressed with this.
And so I'm trying to like, normally we would take longer to do some more stuff, but I kind
of want to just let you do a project and see what, what it works, see how it goes.
So do you have any other questions for me?
No, no, no, it's all fine for now.
Okay.
And you, what are you six, seven hours ahead, six hours ahead?
Uh, like one o'clock here.
It's like 8pm here.
8pm.
Okay.
So, okay.
So let's do this.
Um, I mean, so I will, I'm going to, I'm going to think I've got, I mean, we have an endless
supply of things that need to be done.
And I want to do something that, that I can pick that does do a little bit of the back
end, a little bit of the front end.
Um, yeah, let's, um, I have to just jump to another call that started six minutes ago
or else I would just take some time now and do it.
But let me, um, let me think about what the most, the next most important thing may be.
And, uh, I will, um, put a little project together and email it to you where you can
just click on a link.
And so you'll get something that looks kind of like the, the project I showed you here
in Notion.
Um, take a look at it, read through what, um, read through what, uh, what it is.
And we can jump on a call and talk through it some more.
Um, so that will be, um, uh, how we can do that, but, um, yeah, I would, I think I'd
love to try something like, I'm very hopeful that this is a good, will be a good fit for
both of us, but I'd like to do a project and then you can see.
like working with us and vice versa.
But like I said, it, it looks, it looks really good.
Like, um, just seeing some of the work you've done.
Um, I love your attention to detail on the design side.
Like just bringing in like the Lodi files and other things like that.
Um, I didn't even know that was a, I hadn't heard of that before, but I loved
the little extra attention to detail.
So again, we've hired about 250 developers over the last 11 years.
So that's why I'm kind of just like skipping through the, the standard
questions, he's kind of getting to the point.
Um, so cool, man.
If you have any questions, you can email me.
Um, if not look for an email from me like later today or tomorrow.
Um, and, uh, okay.
I would like to thank you for this opportunity and for cool.
No, I appreciate it.
And in the meantime, uh, like check out, check out the shape up book.
Um, cause that'll help you as far as thinking through our process.
And even if you don't work with us, like you'll, you'll
get lots of value out of it.
Um, uh, so cool, man.
Good talking to you.
Let's, let's talk.
Um, you know, I'll send you an email later today or tomorrow, and then we'll, uh,
we'll do another call and, and try and get a project put together for you.
Um, I'd love, I'd love to have you start on something this week.
Honestly, we have a backlog of stuff.
So it's not a, I just need to find the right project for you.
All right.
Okay.
Thank you, Bruce.
Thanks man.
We'll talk soon.