Tech Side of Success in Education
To shed light on the state of today’s education and the role technology plays in it, better ask a professional. Masnad Nehith is a software architect with nearly a decade of experience in building infrastructure and applications in many domains.
He is currently Director of Technology at New Nordic Schools, an educational company originally from Finland aimed at improving learning at schools worldwide.
With Masnad who joined the company as Director of Technology, the work on the Nordic Learning Platform entered its most productive phase and the product was brought to release in the autumn of 2021.
We discussed with Masnad the specifics of development in the field of education, his approach to code assessment, and the importance of code quality for business.
Masnad, what do you find the most interesting about the development in the field of education?
In the beginning, when I was learning new technologies, all the available materials I found were really long and dull. When diving into something new, I had to read incredibly long manuals and then watch even longer YouTube videos. For example, some videos regarding blockchain were technically correct but just overly long to bear. So I thought I'd make others’ lives easier by making very short and straight-to-the-point videos based on my hands-on practical experience. In a nutshell, it allowed me to create a new opportunity to teach. And nothing is more exciting than getting students’ feedback and answering their questions.
One other great thing about developing an educational platform is allowing students to be creative. I was born in Bangladesh and raised in Saudi Arabia, where approaches to education were so much different, and still, none allowed for any creativity. They were all based on exercises from books that had to be followed strictly. An educational platform, in its turn, can be whatever you like with all kinds of various tasks - and it’s fascinating.
How important is technology in education and the ways it’s applied
What do the words “code” and “AI” mean for you in regards to the Nordic Learning Platform?
We are providing, on one hand, a hybrid solution for teachers and students and, on the other hand, a platform that helps both the teacher and the student evolve and grow.
With the help of Artificial Intelligence and Machine Learning, we’ll be figuring out how a student is studying and trying to improve this process for them with no need to ask questions to the teacher. For example, if the student finds some topic difficult, our system will manage to detect it and the recommendation engine will propose useful resources on the matter.
The teacher, in their turn, will enter our platform and have their lesson plans ready based on the year they teach and also receive a bunch of recommended materials. So we're trying to make teachers’ and students’ lives better. We’ll also make sure that students at school and those at home don't feel estranged.
They should feel that even sitting at home, they’re still seeing the teacher and collaborating with their classmates.
Aside from the recommendation engine, we're also thinking of adding an AI-driven module we call e-portfolio. It will graphically display students’ performance and progress and give them ideas on how to improve.
Both the recommendation feature and e-portfolio are still in development. And you know, it’s not that easy to find specialists capable of implementing all AI and ML stuff. These have been a hot topic for how long, several years now? Ironically enough, most only speak of them but don’t develop actual AI/ML-based solutions. That’s why I find Anadea’s work really impressive. It’s amazing to see them working and wisely allocating responsibilities between team members.
How do you approach the assessment of the work of the Anadea team - what are the criteria?
When I meet team members for the first time, I don’t know them, right? To know them better, I look at how they perform a few tasks and if they are able to accomplish them within a 2-week sprint. Another thing that matters is how they communicate with one another and what they do together to bring out the feature within the deadline. And if something is difficult for them, I look at how they shift tasks from a Junior to Senior Developer.
I myself try to make everyone more comfortable, too. There can be small things here and there that need a bit of tweaking and more time in case of emergency. If there’s a complex and important task to be released next week, I’d make sure developers have 20% fewer tasks in general so that if something goes bad, developers could fix it in no hurry. I think such an approach makes everyone a bit happier and we get more things done in the end.
How do you see the team's contribution to the foundations of the Nordic Learning Platform project?
Anadea's educational software development team made a great contribution. It’s amazing to see the way developers build the platform sticking to the deadlines and making sure things go right. And the team roles are very clear: we have Technical Lead, Business Analyst, Scrum Master, and developers.
If something was not communicated well, a Business Analyst came and broke it down for the team in clear terms, and Tech Lead explained things if there was something way too technical. So as far as I can tell, it’s very much the team’s contribution to what our hybrid learning platform is like today.
Based on your tech foundation, how do you personally determine the quality of your code?
When writing code, we follow certain guidelines for its uniformity. As you know, code can be written in multiple different ways and be completely differently structured to perform the very same task. For me, the most important thing when writing code is making sure that the next person who will see it will understand what that piece of code is about. It shouldn’t be a mess with a bunch of random classes. A good code doesn’t need additional text explaining what it means, it’s clear as is. Next, the code needs to have running tests that confirm it works and doesn't break.
And then I use a platform like SonarCloud to estimate the overall state of code. The platform points out what the code is missing and gives programmers some sort of guidance.
One more option is a peer-to-peer review or the code review process. A person makes a pull and tells another, “Hey, please check out my code.” The more programmers see the code, the better, as it will provide for an unbiased opinion. Or, a Senior Developer can simply check out Junior’s code.
In your opinion, how does the quality of the code affect the business?
Good code saves the development cost. So if a developer writes bad code, that means that at the end of the day, when the platform becomes bigger, the code needs to be redone by someone else or by a more experienced developer. Sometimes, the person doesn't even understand the code that needs to be redone! The company is spending more money just to redo something that was done poorly.
For some businesses, such mistakes cost millions and millions of dollars.
For example, at one of the companies that I've worked with before, we had to redo a whole sector of the business because the code was not making it. To hire good developers who could understand and re-write the code, the company spent lots of money and also time, because hiring is a multistage and time-consuming process.
And of course, you need to look at things from the customer’s perspective. If the code is bad and things don't work, customers simply won’t return to the platform. That’s it, bad code affects pretty much every side of the business.
What advice can you give to business owners who are not developers - how can they determine the quality of development services and the code they get is really good?
It's technically really difficult to estimate the code quality. Sometimes there are 100 lines of code, 98 of which comply with the internal standards and 2 don’t. My advice is to automate all that can be automated. What I do is let programmers know that something’s going wrong in these 2 lines and needs to be fixed, and for that, I use the SonarCloud platform.
It goes through the code and then tells the developer to redo their changes. In sum, the Senior doesn't have to look at the code to find issues as the program finds them and reports back to a business owner.
What will you suggest to business owners who try to find the best developers for their projects? What should they do?
When building your platform, it’s all about trusting your gut - you’re just hoping that you're choosing the right developer for the job. You can use platforms where they have to do coding exercises so that you know that the developer is okay based on their results. The next step would be interviewing. In the dev’s CV, you can see the number of years of their experience, and there’s a big difference between two and, let’s say, six to eight years of programming.
In the first case, a developer has been probably building only basic functionality, while in the second case, they’ve built multiple things. Then, you’ll need to understand if the person fits the project if they share your team’s vibe, morale. So if all three work out, I’d say that is a really good starting point, if no other issues arise.
Could you please describe Anadea in just 3 words?
Efficient, maybe that's the word. Engaged - they never mind hard work! And, eventually, trustworthy.
Whether you’re looking to build an MVP, create a web design for your site, develop a mobile app or complex IT system - tell us about your project. We will give you a quote and advice.
Send us your request for proposal, and we'll reply with the estimate.
Read more success stories
Success Story of e-Learning App
Interview with Pascal Klein,
A co-founder of Ham-Nat Coach
Nordic Learning Platform
Success Story of e-Learning App
Interview with Masnad Nehith,
A co-founder of NLP
Success Story of e-Learning App
Interview with Stephan Kruger,
A founder of Hobbiamo and
All Photography Courses platform