My TypeScript Software Design & Architecture book just prelaunched! Check out

Two years of Univjobs

Jan 24th, 2019 / 3 min read / Share / Edit on GitHub
In this post, I'll walk you through my journey so far building Univjobs. It's been... well, hmm. I guess it's been (to use one of the few fancy words I know), ineffable :) Yeah, I finally got to say that word.

1 - Lets talk about Typescript

Hello I'm assuming that you can hear me. Okay guys so let's talk about typescript. I know that for a long time you probably didn't want to do any type scripts for whatever reason maybe you were scared of types maybe you took a Java class if you hated it not really sure why but for whatever your reason was the answer to that is I think it's time to grow up there's no real reason to be scared of it

Why Univjobs moved to TypeScript Univjobs is platform that I built during my final years while I was at school and I've been working on it ever since it was a prototype that we built node with node and express and it's something that we kind of / together at first and it's taking a bunch of different turns.

Sing about writing Enterprise level software is that need to have good design patterns you need to implement the principles of object-oriented design. This is a whole lot harder when you don't have types so whole lot harder to do things correctly any safety really.

Sure might be a little bit easier to just write things in note buy I think in the long run it's more important to write software that scalable and understandable for people can understand it sometimes a lot of the times when you're writing code in dynamically typed languages you have to play some lot of emphasis on variable names to signify intent to other Developers,  it's not really the best thing to do.

I'm not sure who said it but I'm really starting to understand this year is that it really isn't hard to write code but it really is hard to write good code started reading the design patterns by Robert C Martin and one of the things he says is that good architecture means that it doesn't take longer for you to write new code the larger your app gets he's essentially saying that when your app gets larger shouldn't take you more and more times Implement new features if you've done that then you've essentially failed without using types this becomes pretty hard to do because you have to keep track of a lot of different moving things and you have to really rely on your human capabilities to keep track of relationships between classes and objects.

2 - My story building a startup

Building a startup is really fucking hard. It actually takes every ounce of your being to make the needle tick forward even a little bit.

Being a technical co-founder in a startup is challenging. It’s like being a designer, front end developer, back end developer, software architect, network administrator, integration & automation developer all in one.

I’ve had to learn things in the entire scope of real life software development in the workplace, without a whole lot of real life software development experience from the workfplace.

Technical things I’ve had to get really good at: - git and git flow, because we need to standardize how we work together and don’t break prod.

  • Design

    • This was a hard one for me and took several months of unlearning things to start to get decent at it. I’m not a designer by practice.

Things I’ve had to learn and pick up:

  • How to work on a team

3 - Show some of the new stuff that I'm working on for Univjobs, show the wireframes, etc.


Liked this? Sing it loud and proud 👨‍🎤.


Be the first to leave a comment


Stay in touch!

About the author

Khalil Stemmler

Khalil Stemmler is a Developer / Designer and co-founder of Univjobs. He frequently publishes articles about Domain-Driven Design and Advanced TypeScript & Node.js best practices for large-scale applications.

View more in Entrepreneurship

You may also enjoy...

A few more related articles

Cleaner Code with Async / Await Tutorial
Jul 30th, 2018 / 7 min read
Asynchronous programming in JavaScript used to be difficult to write clean code with. Today we have options. You can write asynchr...
There Is No Dominant Paradigm | Software Professionalism
Jul 11th, 2019 / 9 min read
Functional programming is not the end to all of our problems. Quality software is all three paradigms.
Name, Construct & Structure | Organizing Readable Code - Part 1
Jun 15th, 2019 / 6 min read
Naming files & folders well, using well-understood technical constructs and strategically organizing files well are three ways to ...
Over $85 billion spent on fixing bad code [bootcamps, junior devs, JavaScript, and software design principles]
Jun 7th, 2019 / 10 min read
More and more money is being spent by companies on maintaining bad JavaScript code. Here's where I think our industry needs to cha...

Want to be notified when new content comes out?

Join 2000+ other developers learning about Domain-Driven Design and Enterprise Node.js.

I won't spam ya. 🖖 Unsubscribe anytime.

Get updates