1 / 14

Advice to Fresh Comp. Sc. Graduates & Post-Graduates On Industry Software Development Jobs

This article provides advice to fresh computer science graduates and post-graduates on how to navigate industry software development jobs. It discusses the importance of transitioning from prototype to production quality orientation, acquiring production quality orientation quickly, utilizing self-learning time effectively, learning coding and design standards, understanding testing techniques, and making a good first impression in the job.

rgreen
Download Presentation

Advice to Fresh Comp. Sc. Graduates & Post-Graduates On Industry Software Development Jobs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Advice to Fresh Comp. Sc. Graduates & Post-Graduates On Industry Software Development Jobs Prototype Quality Orientation To Production Quality Orientation

  2. Changing Orientation • BTW Objective is not to scare you! • Just a matter of exposure. Academic training gives more exposure on theory and sometimes research but less on production quality software engineering. • Experience in industry will give the production quality orientation. • But can one acquire production quality orientation quickly? • If so, How?

  3. Understand & Accept • Understand and accept that current skill set you have is prototype software oriented • But don’t just accept my word for it! • Check with seniors about quality of software engineering (I don’t mean Q.A.) in software industry vis-à-vis work done in your final year project

  4. Company Training • (Indian) Software Consultancy Majors • 3 month training • May give some level of production orientation. • Product development companies/in-house software development departments • Typically, no formal training • Self-learning time usually given.

  5. Self-Learning Time • Utilize Self-learning time effectively. Don’t take it easy. Don’t treat it as paid time-pass. Don’t wait for instructions. Be self-motivated. • Work very hard in beginning stages • Treat it as a period of on-the-job learning of rigorous software engineering • Study code of software or software module that you will be working on • Learn from that code – Existing code can be a very great teacher

  6. Coding, Design • Read coding standards/conventions/style documents followed by group/company. • First learn code related aspects of production quality software engineering • Then learn design related aspects. • Study and learn from design documents of software you have to handle – once again, they can be very good teachers. • Study design standards/conventions followed by group/company

  7. Testing, Eye for Detail • Understand testing techniques used in your group. • If test cases have been documented for your software then study it thoroughly. • A key differentiator between prototype quality and production quality is level of detail/depth. • Delve into the depths of code, design and testing of software you will be working on.

  8. Documentation • Study documentation standards/conventions of group/company • Study documentation given in/about the software you will be working on.

  9. First Programming Task • Treat first programming task in your first company as a major milestone in your career. • Work really hard on it. Don’t be afraid of being labeled as a workaholic • Try to apply what you have learnt from study of existing software – code style, design, testing. • If possible, consult with seniors about your approach

  10. First Programming Task … • Give highest importance to testing. Ensure that serious bugs are detected and fixed. • Stick to deadline – may conflict with some of the earlier points – Have to compromise • Document your work in accordance with what has been previously done in your software. • Treat the job as complete only after rigorous testing and documentation have been done.

  11. First Impression • First programming task makes the first real impression on project manager/other management • If you do well you might be given the more challenging and more exciting work – Good growth possibilities • If you mess it up, it may require a lot of time to undo the first impression. Meanwhile you may be given unimportant and boring work – Less growth possibilities

  12. Danger of Complacency • If you do not realize that industry requires higher quality of software engineering: • You may take it easy during self-learning period. • You may do your programming tasks with prototype level of quality • Your programs could be buggy • You could land up with less exciting work and a slow growth path

  13. But My Input Could be Wrong • You may just be LUCKY. • OR you could be having very high quality software engineering skills right now itself. • You may get very exciting work and be able to handle it without really trying to improve your software engineering skills • Check with your seniors about my input and then decide whether to follow it or not.

  14. All the Best • Hope I did not scare you! • That is not the objective (as I said earlier) • Objective is to expose you to the reality of software development jobs in the industry • That can help you be prepared for your first job and make the best of it. • All the very best wishes for your first software development industry job!

More Related