Offshore Developer’s Roadmap to US Projects – Part 5

previous video

Yinso:
You know, a project should be long enough to practice these skills.

Mikhail:
Practice and also create some deliverables that commercially valuable deliverables.

Yinso:
Hopefully, but the very minimum, it should be low enough. That way you actually have a chance to practice. How can something only going to be a weekend, seven days maybe. How much of English can you possibly improve in seven days? Most people’s English improvements should be measured in month basically, instead of weeks. Right. So at a minimum, it should be low enough.

Mikhail:
Yeah. Before I forget, there is another issue of people are doing a program and challenges online. I have nothing against it. I think that people should be doing that because it’s actually quite interesting to challenge yourself, but I would say that that kind of challenge when you’re doing it on your own, has nothing to do with communication skills because there is no-

Yinso:
Totally not. We’re saying there’s three skills, right?

Mikhail:
Uh-huh (affirmative).

Yinso:
There’s the English skill. Then there’s the professional skill and there’s the technical skill. When you do programming challenges or you’re trying to improve your technical skills-

Mikhail:
Both are [inaudible 00:01:18].

Yinso:
The other two skills are being neglected basically. Right?

Mikhail:
Uh-huh (affirmative).

Yinso:
So the project needs to be low enough to practice these skills. Now here’s another interesting part. The projects should have a native or near native speaker. Okay. You got to have someone on the project that’s at least fluent with English for you to practice against because what you want to do when you’re practicing English is you want to model yourself after the person you’re speaking with. That’s the only way that you can possibly get better at it. Oh, so that person is probably the only one that has the chance of explaining things to the non-native speakers in such a way that they could all understand. Non-native speaker talking to non-native speaker, they might have challenges in the parts where the other person will understand. That can make things very difficult.

Mikhail:
They’re both guessing because we don’t have a role model. We don’t have like an example to follow. That’s why they keep exchanging information. We getting a little bit better, but it’s like blind again leading the blind.

Yinso:
Exactly. There should be, like you said, deliverable. Right. A piece of software that can be produced. If it becomes commercially valuable, awesome. If not, by the very minimum, there should be something that gets produced. Right? Now, what’s the environments should feel like? The environment should be supportive of people who have difficulty speaking the language. So the person, others would be willing to basically allow that gap, allow that people could practice English at this time, get themselves across in multiple times without others feeling frustrated. That’s what supportive is.

Yinso:
At the same time, all software project criteria should be in place. That means resource, scope, time. Everything should all be structured in such a way that people know, again, commitment, that they have commitment to meet, that commitment to deliver against and they will be there. Their improvement is going to only come when they deliver against the commitment. Basically having these commitments requires them to communicate and understand the commitment, understands the requirements, understand the goal. In order to understand those things, they have to ask questions. So they will be talking. In order to work with others, that they will then communicate asking, “Where are you and where am I? Do you need help? What do I need help?” So on and so forth. So having the commitment ensures these things to happen, ensures that you’re communicating your design with others because you want your design to work with others. Okay?

Yinso:
So one thing about such a project is that it has to be more than one person. Okay. So at the very minimum, a developer that we were talking about, needs to work with at least one other person for all these things to happen, basically. The developer is not going to be a native speaker. So he or she needs to find a native or near native speaker to work with. That native or near native speaker needs to be supportive, but yet able to basically apply all the project management stuff to ensure that the developer is now committed to develop something, to deliver something. That way the developer would then be communicating and that person knows what he needs to be asking for.

Yinso:
All the professionalism from the developer. If you say that you’re going to deliver, then you’re going to deliver. If you’re not going to meet that delivery, then you have to be able to negotiate with me. These are the practices that the dev has to go through. If that dev is already capable in English, in order for that dev to work in that English environment still has to have that professional skill. Right? In this industry we expect that, basically. Only when you have these skills can you expect to move into the senior ranks, basically?

Mikhail:
This is why this kind of a learning environment or let’s call it a program or some kind of learning program. It will not work if it’s led by just a language teacher, no matter how good that language teacher is. It just doesn’t work simply because language teacher not being an expert in that field, he or she won’t be able to guide people in any way. It will turn into just language discussion, which is maybe cool or maybe even interesting. Some people might even prefer to do it this way, but it doesn’t really build upon your professional skills. The only instructor-led courses in my opinion, would actually help you to understand those things.

Yinso:
Right. We talk about what is the steps to get there faster. Basically what we explained so far id the steps to get there faster. You got to know what your end in mind is, and you got to know where you are. Right? Then you got to then, based on that map out, what is that you need? Unless you want to immigrate to US, Europe or Canada and even if you do, you still have to do the same thing. You start to improve on your English skills, improve on your technical skills and improve your professional skills. The shortest path to improve all your skills is to get into a project at the type of structure that we talked about. That’s low enough for you to practice these skills and have a native or near native speaker participating, driving the deliverable, but yet being supportive at the same time. Ask the participant, ask the developers to deliver against the commitment. That is the delivery that will allow the developers to improve and gain the skills that they need in such an environment.

Yinso:
It can be our project. Anyone who’s watching this, I obviously would welcome them to try to join our projects. If not, at the very minimum, we provide a roadmap here for someone to go and try to structure their own projects the way that we’re talking here. They’re free to follow what we have recorded in the software from the ground up and try to do it themselves. Even if they want to do exactly same thing, send it over or whatever, all good. Just follow the program that we had laid out. By the very minimum, they got to make sure that their project had these sort of criteria to enable them to get there fast, basically, instead of trying blind leading the blind situation. Blind leading blind just means they just get there slower, a lot slower.

Mikhail:
Just to follow up on what you’re saying, just from my personal experience, when I started to use GitHub, basically I’m only using it as a non-technical person, but I’m curious about what other people are developing. I realized that there are maybe thousands, maybe even tens of thousands of pretty interesting projects, that have a potential to become commercial projects, yet they will never become commercial projects simply because it’s only one person developing.

Mikhail:
Even though GitHub was a very supportive environment and people are committing like changes, raising issues and doing a lot of valuable stuff, helping each other. This is still not the communication and a sense of actual aware. Every day they actually speak and they’re on Skype, they’re really discussing those issues. They do it in groups. They’re actually trying to make up a schedule. They are trying to get somewhere. That part is definitely missing because just by sending messages to each other, it’s almost like instant messaging kind of thing. Even though it feels helpful and that feels like, “Okay, I’m communicating with so many people. They’re so awesome, but to me it’s still not communication. Communication to me means we’re doing something together. We are actually communicating. We are committed to something, as you mentioned, then we can expect some improvement or maybe we can even develop commercial software somehow. So that’s a very important thing for me.

Yinso:
True. Very true. The type you can communicate and get help, it’s all text-based. Most of these developers that we’re talking about here, they’re reading and writing skills of English is so much better than their speaking and listening skills. That’s where the issue is. Right? In order for them to get to that next level, it’s no longer about their reading, writing skills. They have to improve on their listening and speaking skills and GitHub is never going to offer that, basically. People are just talking via text while typing and that’s only going to get you so far, as you know, from a professional career perspective, basically. Okay. Hopefully some of your friends finds this helpful, some of your developer friends.

Mikhail:
I hope so too.

Yinso:
They might or might not. I don’t know, but this is honestly what I do believe as what they need.

Mikhail:
Yeah. I’m thinking along the same lines from there. I just feel that sometimes I feel, from my communication experiences with developers do often lack that kind of direction. Once they see the direction, once we know where we’re going, they will get there. It’s just it’s a matter of time. Yeah. It’s not even a luck thing because obviously there is a huge demand for their skills, for skillful people like themselves. Those people need to be able to communicate well in the context of actual software projects. So once you start communicating, you will learn how to do it. If you just going here and there, from schools, from podcasts, so [inaudible 00:12:51], participates in a language exchange meeting. It helps you, but it will take years and maybe even decades to get to the point where you’re going. Maybe you might not even be able to get there. I think the right focus is the most important thing, from my perspective.

Yinso:
Very cool. Okay. Anything else about this?

Mikhail:
That’s a good start.

Yinso:
Let’s call it a day for this.

Mikhail:
Yeah.

Yinso:
Cool.

Leave a Reply