Software engineers do what now?
Software engineers do what now?
About the Book
Explore the world of Software Engineering!
Whether you’re a student, tech recruiter or simply want a change of career,
this book will cover many areas of software engineering, including:
- Confusing terminology
- The type of job roles available
- Career progression with advice on how to break into the field
- The recruitment process
- Insight into some of the most popular programming languages, libraries, tools and frameworks used in the industry today.
You will get a feel and basic understanding of the tech that is out there. It
may give you a kickstart and the motivation to pursue a career or hobby in
software engineering yourself.
The book is broken into four parts:
- The first part focuses on the software industry ranging from the types of roles out there, recruitment, and what a typical day as a software engineer looks like.
- The second part is centred around programming and testing terminology used in the industry.
- The third part is a collection of programming languages used by software engineers. This isn’t an exhaustive list, but a majority of the most common languages used commercially today.
- The fourth part is focused on web-related libraries and frameworks.
No longer will you give a long blank stare at those technical individuals in the office, trying to figure out what on earth are they talking about. I've had those stares before...If you can put up with the occasional lame joke, then pick up a copy today.
Table of Contents
- Creative Commons Notice - 11
- Introduction - 12
- End Goal - 13
- Book Coding Style - 13
- Prerequisites - 14
- Assumptions - 15
- Suggestions - 15
- Structure - 16
- Part 1 - Software Careers - 16
- Part 2 - Terminology - 16
- Part 3 - Programming Languages - 16
- Part 4 - Web Libraries & Frameworks - 16
- Software careers - 17
- My career - 18
- Hello - 18
- First role - 19
- Covent Garden - 19
- Piccadilly Circus - 19
- Vauxhall - 20
- Personal projects - 20
- Career path - 21
- 1 - Junior developer - 21
- 2 - Mid-level developer - 21
- 3 - Senior developer - 22
- 4a - Tech lead/Principal developer - 22
- 4b - Team Lead/Team manager - 22
- 5 - Technical architect - 22
- 6 - Engineering manager - 23
- 7 - Chief Technology Officer (CTO) - 23
- Flat-based structure - 23
- Technology roles - 25
- Front-end vs Back-end - 25
- Front-end engineers - 25
- Back-end engineers - 26
- Other specialised engineers - 28
- Development process - 31
- Backlog - 31
- Ceremonies - 32
- Tech staff retention - 34
- Getting along with my manager - 34
- My ideas and contributions matter - 35
- Working from home - 35
- Friendly colleagues - 36
- I’m learning a lot - 37
- Work recognition - 38
- I can dress down - 38
- Interview process - 39
- A - CV Review - 40
- B - Phone interview - 40
- C - Coding test - 42
- D - Face to face interview - 42
- E - Offer of employment - 43
- CV screening - 44
- Personal statement - 44
- Career achievements - 45
- Employment history - 46
- Key skills - 46
- CV considerations - 47
- Interview pitfalls - 49
- Complexity of role - 49
- Company domain knowledge - 50
- Candidate strengths over weaknesses - 51
- Experts in field turned down - 52
- Tech recruiters - 53
- Positives of recruitment - 53
- Innovative job descriptions - 54
- Be honest & genuine - 54
- Done their research - 56
- Learning to code - 57
- Good skills to have - 57
- Ways to learn to code - 58
- The next steps - 59
- Terminology - 60
- Software development terminology - 61
- API (Application Programming Interface) - 61
- Asynchronous & Synchronous - 61
- Caching - 62
- CDN (Content Delivery Network) - 62
- CI/CD (Continuous Integration/Continuous Deployment) - 62
- CMS (Content Management System) - 63
- CRM (Customer Relationship Management) - 63
- Cookies - 64
- Framework + Library - 64
- HTTP Status Codes - 65
- IDE (Integrated Development Environment) - 65
- Plugin/Extension - 66
- Object Oriented Programming (OOP) - 66
- Responsive Web Design - 66
- Sequential vs Concurrency vs Parallelism - 67
- Terminal/Console - 67
- UI (User Interface) - 68
- UX (User Experience) - 68
- Version Control - 69
- Software Testing Terminology - 71
- Unit Testing - 71
- Integration Testing - 72
- System/End to end Testing - 73
- Sanity Testing - 73
- Smoke Testing - 73
- Regression Testing - 74
- Acceptance Testing - 74
- Languages - 75
- HTML - 76
- Language introduction - 76
- Code example - 76
- Use cases - 78
- Did you know? - 78
- CSS - 80
- Language introduction - 80
- Code example - 80
- Use cases - 85
- Did you know? - 85
- JavaScript - 86
- Language introduction - 86
- Code example - 86
- Use cases - 88
- Did you know? - 88
- TypeScript - 90
- Language introduction - 90
- Code example - 90
- Use cases - 92
- Did you know? - 92
- PHP - 94
- Language introduction - 94
- Code example - 94
- Use cases - 96
- Did you know? - 96
- SQL - 97
- Language introduction - 97
- Code example - 98
- Use cases - 99
- Did you know? - 99
- C - 100
- Language introduction - 100
- Code example - 100
- Use cases - 101
- Did you know? - 102
- C++ - 103
- Language introduction - 103
- Code example - 103
- Use cases - 106
- Did you know? - 106
- C Sharp - 108
- Language introduction - 108
- Code example - 109
- Use cases - 110
- Did you know? - 111
- Java - 112
- Language introduction - 112
- Code example - 112
- Use cases - 114
- Did you know? - 114
- Python - 115
- Language introduction - 115
- Code example - 115
- Use cases - 116
- Did you know? - 117
- Ruby - 118
- Language introduction - 118
- Code example - 118
- Use cases - 120
- Did you know? - 120
- Rust - 121
- Language introduction - 121
- Code example - 122
- Did you know? - 122
- Kotlin - 124
- Language introduction - 124
- Code example - 124
- Use cases - 125
- Did you know? - 126
- Golang - 127
- Language introduction - 127
- Code example - 127
- Use cases - 128
- Did you know? - 129
- Swift - 130
- Language introduction - 130
- Code example - 130
- Use cases - 132
- Did you know? - 132
- Haxe - 133
- Language introduction - 133
- Code example - 133
- Use cases - 135
- Did you know? - 135
- Libraries & frameworks - 136
- React - 137
- Language introduction - 137
- Code example - 138
- React Native - 139
- Use cases - 140
- Did you know? - 140
- Vue - 141
- Language introduction - 141
- Code example - 141
- Use cases - 143
- Did you know? - 144
- Angular - 145
- Language introduction - 145
- Code example - 146
- Use cases - 150
- Did you know? - 150
- MVC Web Frameworks - 152
- Introduction - 152
- Example - 153
- Code example - 153
- Use cases - 155
- Did you know? - 155
- Node.js & npm - 156
- npm - 156
- Code example - 157
- Use cases - 158
- Did you know? - 158
- Wrap up - 159
- Next steps - 159
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them