3 ms·
I'd say just make sure you have some practice using a version control system and know the basics of making and merging branches. You don't have to be experience
by mrfredward 7y ago
I'd say just make sure you have some practice using a version control system and know the basics of making and merging branches. You don't have to be experienced with handling merge conflicts, when you're on a team a more experienced person can always help you with tougher cases like that.
I'm assuming you have some projects at home since you're self taught. Whenever you find yourself manually checking something works on these projects, consider writing a test. If your compiler/build system doesn't have a test framework built in, you could just write a little command line program that prints pass/fail at the end. Test frameworks are easy to learn later. The skill to develop here is knowing how to write testable code--i.e. if you can't test something without running half your code base, figure out how to decouple the thing you want to test from everything else.
Companies all have their own quirky processes for things like code review, and very few are actually following best practices, so for this you'll learn how to do things when you get there.
More important than anything I've written above though, is have some experience reading other people's code. Writing code does not necessarily make you good at reading it. I'm self taught, and I used to have a pattern of downloading an open source library I wanted to use, trying to do something in it that went past the basic examples, and then giving up because the documentation was awful. When you work for a company, you're usually surrounded by code you didn't write that has little to no documentation, so you're gonna have to learn how to read code to answer your questions in order to be effective. If you don't know how to practice this, consider downloading a little open source game you like, and try making simple changes to it. Navigating a big code base you didn't write is pretty overwhelming at first, but it's an important skill to develop.