During my studies I worked at quite a lot of companies. I’ve tried to change my workplace every semester to gain an insight into different workplaces and workflows. This decision now pays off as I have enough experience to know how I can work best before applying for a real job. I’d like to share my thoughts about this topic as I think that these may help other students looking for a job in the near future.
I want to be part of the whole process.
Translating a “finished” photoshop file into code is not how I understand my work. As a developer I want to be involved into the whole process, because I know what is technically possible. I have the arguments to explain clients why animations in IE8 may not be the best idea or why designers can’t use this cool new transparency layer from iOS7. Building software consists of more parts than just programming and I want to learn more about them.
I want to work in a team.
The more thoughts go into a product, the better it gets. I have read books about design, typography and attended lectures about user interface and experience design, but I wouldn’t consider myself a designer. I know how to program a RESTful API in PHP and how to query MySQL databases. I also had a look into node.js, express.js and socket.io, but I wouldn’t consider myself a backend developer.
I want to work iteratively.
Responsive websites can’t be build with the waterfall model. Modern websites are design systems. Due to the tremendous amount of different devices browsing the internet, websites should be made in the browser as prototypes which are refined incrementally. I want to work together with designers on style guides, improve interactions and adjust the design for different screen sizes. Decoupling the backend from the frontend allows parallel and independent development on both sides and improves the maintainability of the code. I want to build flexible, modular systems with backend developers which are developer friendly, reliable and performant.
I want to use the right tool for the right job.
Web development is like a huge toolbox. There are different languages, libraries and frameworks. Each one has its own advantages and disadvantages. Let me evaluate which one is the best for each project instead of relying on one tool for everything. Of course there will be favorites, but the web environment is rapidly changing and new tools arise every day. I want to have the ability to test those tools and choose the best to accelerate the development process.
I want to learn.
Last but not least, I want to master my craft. I am a geek reading programming books during the weekend and technical articles as my morning lecture, because I enjoy what I do and I want to get better at it. I follow great people on twitter who taught me more than my studies could offer. Web development evolves fast and I want to stay up-to-date. As web conferences are expensive I have never been to one, but I watched videos of talks. I want to have the opportunity to visit conferences and experiment with the cutting edge of web development.