SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Reservations Gateway Inc.Reservations Gateway Inc.
YOUR LINK to e-TRAVEL SOLUTIONSYOUR LINK to e-TRAVEL SOLUTIONS
July 2014
So you want to beSo you want to be
a Software Engineera Software Engineer
““You can not climb the ladder of successYou can not climb the ladder of success
With your hands in your pocket... ”With your hands in your pocket... ”
Indika Maligaspe
by Arnold Schwarzeneggerby Arnold Schwarzenegger
Intro...Intro...
October 2013
Indika Maligaspe

K. Indika Maligaspe

Chief Technology Officer – RezGateway Inc.

Developer, Designer, Engineer, Architect , Trainer

Specialized in JEE, Web Services , Agile , Software Engineering etc...

Over 15 years if experience in IT / Web Technologies

http://www.linkedin.com/profile/view?id=201732082&trk=nav_responsive_tab_profile
What we will coverWhat we will cover
July 2014
What is Software EngineeringWhat is Software Engineering
Views of Software EngineeringViews of Software Engineering
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
Indika Maligaspe
What is Software EngineeringWhat is Software Engineering
July 2014
Software EngineeringSoftware Engineering
– is the study and application of engineering to the design,
development, and maintenance of software - Wikipedia
EngineeringEngineering
– is the application of scientific, economic, social, and practical
knowledge in order to invent, design, build, maintain, and
improve structures, machines, devices, systems, materials and
processes. - Wikipedia
Indika Maligaspe
Views of Software EngineeringViews of Software Engineering
July 2014
General View- Software EngineeringGeneral View- Software Engineering
– is to code , develop software with the language and tools defined
to create a working piece of software.
My View- Software EngineeringMy View- Software Engineering
– is the practice of building and maintaining software with
customer or market value in mind by using the most suitable
methodologies , standard, tools, designs, technologies and
management
Indika Maligaspe
How much do we codeHow much do we code
July 2014
On an average we code only about 5% of our working day other 95%On an average we code only about 5% of our working day other 95%
we arewe are
– Reading code (understanding other people's code)
– Testing
– Understanding Requirements
– Communicating with colleagues
– Building and Releasing
– Problem Solving (Analyzing and Designing)
Knowing a language, knowing how to code, having a
college degree does not make you an Engineer...
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
TechnologyTechnology
Not all people do all things But...Not all people do all things But...
Lack of awareness is bad and leads to isolated decisions WhichLack of awareness is bad and leads to isolated decisions Which
leads toleads to
– unseasonal requirements
– over engineered systems
– half baked solutions
– maintenance nightmares
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Software Engineering practicesSoftware Engineering practices
– Why are we doing software - To meet a client's need?
– Keep it simple (KISS)
– Know that you only write once but others will consume
what you produce (coding standards / clear coding..)
– Be open to the future
– Plan ahead for re-use
– Think and then act (not the other way around)
– Design principles and practices – (SOLID / OOD ...)
(http://www.slideshare.net/indikaMaligaspe/writing-quality-software
,http://www.slideshare.net/indikaMaligaspe/software-engineering-principles-
29010733)
– What is out there in the industry ( TDD , XP , Secure
coding, Performance based coding etc...)
– Version control , version and release strategy (Jenkins
Puppet / Git, SVN, CVS ...
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Technology – Some questions to askTechnology – Some questions to ask
What is related to current work, likeWhat is related to current work, like
– Language (Java / HTML / JQuery / PL-SQL ...)
– IDE (Do we really know eclipse ?)
– Database
– Middle ware
– Web tier (Apache / Tomcat / Jetty ...)
– Test tools
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Technology – Some questions to askTechnology – Some questions to ask
What is related to current project / product likeWhat is related to current project / product like
– How / where are the systems deployed?

Infrastructure - clustered / geographically
distributed / in the cloud / mobile platforms ...
– How / where do we store data in production?

DBMS / Caching / NoSQL / ORM ...
– How / where do we host our system

hosting vendors, limitations, performance / logs ...
– How do we build our system, what are the tools?

Jenkins / ANT / Maven ...
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Technology – Some questions to askTechnology – Some questions to ask
• What are used in other projects and whyWhat are used in other projects and why
– Memcache-d or REDIS or HADOOP ?
– Java or Python or .Net ?
– PostgreSQL / MySQL / Oracle / Cassandra / flat files?
• What is out there -What is out there - Not to use them, but to know about them,
try them out and be ready
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Tools –Tools – Do we really know them?Do we really know them?
– Current tools used (IDE / Nagios / Ant / Maven / JProfiler /
Firebug / DbAnalyzer ....)
– Tools which are out there
– How to build tools that you do not have but need
Try new tools, learn about tools, how to use existing tools (even
when you do not need to use them like IDE tools, profiling tools,
static analysis tools etc..)
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Soft skillsSoft skills
– Communication -Communication -
Not just with code but with co-workers, managers, business
people, clients
– Planning and Estimation –Planning and Estimation –
What you know and what you don't know?
– Mentoring and Guiding -Mentoring and Guiding -
You are not going to do the same thing always, so train ,
monitor and groom
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Discipline - while planning, coding, versioning, releasing ...Discipline - while planning, coding, versioning, releasing ...
– is difference between a cowboy and an seasoned engineer
– is "controlled behavior resulting from training , study and
practice"
– Indiscipline is Caused by lack of focus, laziness and the view that
you are doing a job and not as an art.
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
AttitudeAttitude
– Desire to solve problems and see through to the end
– Always learning and ready grow
• How do you get knowledge
– Read, Study, Leverage User Groups
– Participate in the community (Apache / stackoverflow /
stackexchange/javaranch/ PyCon / Macsheble)
– Collaborate with colleagues
Indika Maligaspe
What's needed for todays Software EngineerWhat's needed for todays Software Engineer
July 2014
Contribute –Contribute – The best way to feel good about yourself
– Blogs
– Train/Coach
– Participate in the community (Apache / stackoverflow /
stackexchange/javaranch/ PyCon / Macsheble)
Indika Maligaspe
July 2014
Indika Maligaspe
Thank You
Reservations Gateway Inc.Reservations Gateway Inc.
YOUR LINK to e-TRAVEL SOLUTIONSYOUR LINK to e-TRAVEL SOLUTIONS
Reservations Gateway Inc.
Reservations Gateway Inc.
11654 Plaza America Drive , Unit 645
Reston, Virginia 20190-4700
USA
703 286 5331
703 433 0146
info@rezgateway.com
www.rezgateway.com
Tel :
Fax :
Email :
Web :

Weitere ähnliche Inhalte

Andere mochten auch

Software Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality ManagementSoftware Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality Managementنور شزننا
 
Being a Professional Software Developer
Being a Professional Software DeveloperBeing a Professional Software Developer
Being a Professional Software DeveloperAnton Keks
 
Software developer
Software developerSoftware developer
Software developerthexveleven
 
Engineer Jobs Singapore-Software Engineer
Engineer Jobs Singapore-Software EngineerEngineer Jobs Singapore-Software Engineer
Engineer Jobs Singapore-Software EngineerVincent Siew
 
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...DEVCON
 
Software developer career growth
Software developer career growthSoftware developer career growth
Software developer career growthSamnang Chhun
 
Life of Software Engineer
Life of Software Engineer Life of Software Engineer
Life of Software Engineer Namrata Ukirde
 
Software engineer - H.Toor
Software engineer - H.ToorSoftware engineer - H.Toor
Software engineer - H.Toorhst77
 
Presentation 3 software developer in rfid
Presentation 3 software developer in rfidPresentation 3 software developer in rfid
Presentation 3 software developer in rfidMouhanad Alkhaldi
 
Software developer cover letter
Software developer cover letterSoftware developer cover letter
Software developer cover letteralissaturner627
 

Andere mochten auch (12)

Software Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality ManagementSoftware Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality Management
 
Being a Professional Software Developer
Being a Professional Software DeveloperBeing a Professional Software Developer
Being a Professional Software Developer
 
Software developer
Software developerSoftware developer
Software developer
 
Engineer Jobs Singapore-Software Engineer
Engineer Jobs Singapore-Software EngineerEngineer Jobs Singapore-Software Engineer
Engineer Jobs Singapore-Software Engineer
 
26968 software developer career
26968 software developer career26968 software developer career
26968 software developer career
 
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
 
Software developer career growth
Software developer career growthSoftware developer career growth
Software developer career growth
 
Life of Software Engineer
Life of Software Engineer Life of Software Engineer
Life of Software Engineer
 
Software engineer - H.Toor
Software engineer - H.ToorSoftware engineer - H.Toor
Software engineer - H.Toor
 
Presentation 3 software developer in rfid
Presentation 3 software developer in rfidPresentation 3 software developer in rfid
Presentation 3 software developer in rfid
 
Software developer cover letter
Software developer cover letterSoftware developer cover letter
Software developer cover letter
 
Slideshare ppt
Slideshare pptSlideshare ppt
Slideshare ppt
 

Ähnlich wie So you want to be a Software Engineer

Extreme Programming 2018 — Agile Beyond Scrum
Extreme Programming 2018 — Agile Beyond ScrumExtreme Programming 2018 — Agile Beyond Scrum
Extreme Programming 2018 — Agile Beyond ScrumChristian Hujer
 
Enhancing Software Engineering Practices at Our Startup.pptx
Enhancing Software Engineering Practices at Our Startup.pptxEnhancing Software Engineering Practices at Our Startup.pptx
Enhancing Software Engineering Practices at Our Startup.pptxmuktar42
 
How to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software DeveloperHow to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software Developerjeetendra mandal
 
Big data workshop october 18
Big data workshop october 18Big data workshop october 18
Big data workshop october 18Mohammad Zaman
 
Scaling up your R&D group
Scaling up your R&D groupScaling up your R&D group
Scaling up your R&D groupAvi Wortzel
 
How To Do A Project?
How To Do A Project?How To Do A Project?
How To Do A Project?Aravinth NSP
 
How to Build your Career.pptx
How to Build your Career.pptxHow to Build your Career.pptx
How to Build your Career.pptxvaideheekore
 
Developers Nepal Meetup #4 Report
Developers Nepal Meetup #4 ReportDevelopers Nepal Meetup #4 Report
Developers Nepal Meetup #4 ReportPunit Jajodia
 
Services, tools & practices for a software house
Services, tools & practices for a software houseServices, tools & practices for a software house
Services, tools & practices for a software houseParis Apostolopoulos
 
Next-gen IDE v2 - OpenSlava 2013-10-11
Next-gen IDE v2 - OpenSlava 2013-10-11Next-gen IDE v2 - OpenSlava 2013-10-11
Next-gen IDE v2 - OpenSlava 2013-10-11Jorge Hidalgo
 
Gdsc IIIT Surat Orientation 2022.pdf
Gdsc IIIT Surat Orientation 2022.pdfGdsc IIIT Surat Orientation 2022.pdf
Gdsc IIIT Surat Orientation 2022.pdfSparshJhariya2
 
Agile Development: Key to smart software development
Agile Development: Key to smart software developmentAgile Development: Key to smart software development
Agile Development: Key to smart software developmentJerlyn Manohar
 
Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “
Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “
Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “Dakiry
 

Ähnlich wie So you want to be a Software Engineer (20)

Extreme Programming 2018 — Agile Beyond Scrum
Extreme Programming 2018 — Agile Beyond ScrumExtreme Programming 2018 — Agile Beyond Scrum
Extreme Programming 2018 — Agile Beyond Scrum
 
Enhancing Software Engineering Practices at Our Startup.pptx
Enhancing Software Engineering Practices at Our Startup.pptxEnhancing Software Engineering Practices at Our Startup.pptx
Enhancing Software Engineering Practices at Our Startup.pptx
 
Idea7 Jug
Idea7 JugIdea7 Jug
Idea7 Jug
 
Harsh Lamba
Harsh LambaHarsh Lamba
Harsh Lamba
 
Agile 101
Agile 101 Agile 101
Agile 101
 
How to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software DeveloperHow to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software Developer
 
Big data workshop october 18
Big data workshop october 18Big data workshop october 18
Big data workshop october 18
 
Scaling up your R&D group
Scaling up your R&D groupScaling up your R&D group
Scaling up your R&D group
 
How To Do A Project
How To Do A ProjectHow To Do A Project
How To Do A Project
 
How To Do A Project?
How To Do A Project?How To Do A Project?
How To Do A Project?
 
How to Build your Career.pptx
How to Build your Career.pptxHow to Build your Career.pptx
How to Build your Career.pptx
 
Developers Nepal Meetup #4 Report
Developers Nepal Meetup #4 ReportDevelopers Nepal Meetup #4 Report
Developers Nepal Meetup #4 Report
 
Services, tools & practices for a software house
Services, tools & practices for a software houseServices, tools & practices for a software house
Services, tools & practices for a software house
 
Next-gen IDE v2 - OpenSlava 2013-10-11
Next-gen IDE v2 - OpenSlava 2013-10-11Next-gen IDE v2 - OpenSlava 2013-10-11
Next-gen IDE v2 - OpenSlava 2013-10-11
 
MohitKumarGupta_Resume
MohitKumarGupta_ResumeMohitKumarGupta_Resume
MohitKumarGupta_Resume
 
Gdsc IIIT Surat Orientation 2022.pdf
Gdsc IIIT Surat Orientation 2022.pdfGdsc IIIT Surat Orientation 2022.pdf
Gdsc IIIT Surat Orientation 2022.pdf
 
Agile Development: Key to smart software development
Agile Development: Key to smart software developmentAgile Development: Key to smart software development
Agile Development: Key to smart software development
 
Being Agile
Being AgileBeing Agile
Being Agile
 
Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “
Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “
Діана Пінчук “How to test mobile SDK and do not loose faith in yourself “
 
Career path in IT
Career path in IT  Career path in IT
Career path in IT
 

Mehr von indikaMaligaspe

Rez gateway (RezOS) innovate the future
Rez gateway  (RezOS) innovate the futureRez gateway  (RezOS) innovate the future
Rez gateway (RezOS) innovate the futureindikaMaligaspe
 
Rez gateway - RezOS - innovate the future
Rez gateway - RezOS -   innovate the futureRez gateway - RezOS -   innovate the future
Rez gateway - RezOS - innovate the futureindikaMaligaspe
 
Delivering Powerful Presentations
Delivering Powerful PresentationsDelivering Powerful Presentations
Delivering Powerful PresentationsindikaMaligaspe
 
How ICT is shaping Travel and Tourism landscapes
How ICT is shaping Travel and Tourism landscapesHow ICT is shaping Travel and Tourism landscapes
How ICT is shaping Travel and Tourism landscapesindikaMaligaspe
 
Designing Rest Services - An Architects Guide
Designing Rest Services - An Architects GuideDesigning Rest Services - An Architects Guide
Designing Rest Services - An Architects GuideindikaMaligaspe
 
Object Oriented Software Design Principles
Object Oriented Software Design PrinciplesObject Oriented Software Design Principles
Object Oriented Software Design PrinciplesindikaMaligaspe
 

Mehr von indikaMaligaspe (7)

Rez gateway (RezOS) innovate the future
Rez gateway  (RezOS) innovate the futureRez gateway  (RezOS) innovate the future
Rez gateway (RezOS) innovate the future
 
Rez gateway - RezOS - innovate the future
Rez gateway - RezOS -   innovate the futureRez gateway - RezOS -   innovate the future
Rez gateway - RezOS - innovate the future
 
Delivering Powerful Presentations
Delivering Powerful PresentationsDelivering Powerful Presentations
Delivering Powerful Presentations
 
How ICT is shaping Travel and Tourism landscapes
How ICT is shaping Travel and Tourism landscapesHow ICT is shaping Travel and Tourism landscapes
How ICT is shaping Travel and Tourism landscapes
 
Designing Rest Services - An Architects Guide
Designing Rest Services - An Architects GuideDesigning Rest Services - An Architects Guide
Designing Rest Services - An Architects Guide
 
Writing Quality Code
Writing Quality CodeWriting Quality Code
Writing Quality Code
 
Object Oriented Software Design Principles
Object Oriented Software Design PrinciplesObject Oriented Software Design Principles
Object Oriented Software Design Principles
 

Kürzlich hochgeladen

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 

Kürzlich hochgeladen (20)

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 

So you want to be a Software Engineer

  • 1. Reservations Gateway Inc.Reservations Gateway Inc. YOUR LINK to e-TRAVEL SOLUTIONSYOUR LINK to e-TRAVEL SOLUTIONS July 2014 So you want to beSo you want to be a Software Engineera Software Engineer ““You can not climb the ladder of successYou can not climb the ladder of success With your hands in your pocket... ”With your hands in your pocket... ” Indika Maligaspe by Arnold Schwarzeneggerby Arnold Schwarzenegger
  • 2. Intro...Intro... October 2013 Indika Maligaspe  K. Indika Maligaspe  Chief Technology Officer – RezGateway Inc.  Developer, Designer, Engineer, Architect , Trainer  Specialized in JEE, Web Services , Agile , Software Engineering etc...  Over 15 years if experience in IT / Web Technologies  http://www.linkedin.com/profile/view?id=201732082&trk=nav_responsive_tab_profile
  • 3. What we will coverWhat we will cover July 2014 What is Software EngineeringWhat is Software Engineering Views of Software EngineeringViews of Software Engineering What's needed for todays Software EngineerWhat's needed for todays Software Engineer Indika Maligaspe
  • 4. What is Software EngineeringWhat is Software Engineering July 2014 Software EngineeringSoftware Engineering – is the study and application of engineering to the design, development, and maintenance of software - Wikipedia EngineeringEngineering – is the application of scientific, economic, social, and practical knowledge in order to invent, design, build, maintain, and improve structures, machines, devices, systems, materials and processes. - Wikipedia Indika Maligaspe
  • 5. Views of Software EngineeringViews of Software Engineering July 2014 General View- Software EngineeringGeneral View- Software Engineering – is to code , develop software with the language and tools defined to create a working piece of software. My View- Software EngineeringMy View- Software Engineering – is the practice of building and maintaining software with customer or market value in mind by using the most suitable methodologies , standard, tools, designs, technologies and management Indika Maligaspe
  • 6. How much do we codeHow much do we code July 2014 On an average we code only about 5% of our working day other 95%On an average we code only about 5% of our working day other 95% we arewe are – Reading code (understanding other people's code) – Testing – Understanding Requirements – Communicating with colleagues – Building and Releasing – Problem Solving (Analyzing and Designing) Knowing a language, knowing how to code, having a college degree does not make you an Engineer... Indika Maligaspe
  • 7. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 TechnologyTechnology Not all people do all things But...Not all people do all things But... Lack of awareness is bad and leads to isolated decisions WhichLack of awareness is bad and leads to isolated decisions Which leads toleads to – unseasonal requirements – over engineered systems – half baked solutions – maintenance nightmares Indika Maligaspe
  • 8. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Software Engineering practicesSoftware Engineering practices – Why are we doing software - To meet a client's need? – Keep it simple (KISS) – Know that you only write once but others will consume what you produce (coding standards / clear coding..) – Be open to the future – Plan ahead for re-use – Think and then act (not the other way around) – Design principles and practices – (SOLID / OOD ...) (http://www.slideshare.net/indikaMaligaspe/writing-quality-software ,http://www.slideshare.net/indikaMaligaspe/software-engineering-principles- 29010733) – What is out there in the industry ( TDD , XP , Secure coding, Performance based coding etc...) – Version control , version and release strategy (Jenkins Puppet / Git, SVN, CVS ... Indika Maligaspe
  • 9. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Technology – Some questions to askTechnology – Some questions to ask What is related to current work, likeWhat is related to current work, like – Language (Java / HTML / JQuery / PL-SQL ...) – IDE (Do we really know eclipse ?) – Database – Middle ware – Web tier (Apache / Tomcat / Jetty ...) – Test tools Indika Maligaspe
  • 10. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Technology – Some questions to askTechnology – Some questions to ask What is related to current project / product likeWhat is related to current project / product like – How / where are the systems deployed?  Infrastructure - clustered / geographically distributed / in the cloud / mobile platforms ... – How / where do we store data in production?  DBMS / Caching / NoSQL / ORM ... – How / where do we host our system  hosting vendors, limitations, performance / logs ... – How do we build our system, what are the tools?  Jenkins / ANT / Maven ... Indika Maligaspe
  • 11. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Technology – Some questions to askTechnology – Some questions to ask • What are used in other projects and whyWhat are used in other projects and why – Memcache-d or REDIS or HADOOP ? – Java or Python or .Net ? – PostgreSQL / MySQL / Oracle / Cassandra / flat files? • What is out there -What is out there - Not to use them, but to know about them, try them out and be ready Indika Maligaspe
  • 12. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Tools –Tools – Do we really know them?Do we really know them? – Current tools used (IDE / Nagios / Ant / Maven / JProfiler / Firebug / DbAnalyzer ....) – Tools which are out there – How to build tools that you do not have but need Try new tools, learn about tools, how to use existing tools (even when you do not need to use them like IDE tools, profiling tools, static analysis tools etc..) Indika Maligaspe
  • 13. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Soft skillsSoft skills – Communication -Communication - Not just with code but with co-workers, managers, business people, clients – Planning and Estimation –Planning and Estimation – What you know and what you don't know? – Mentoring and Guiding -Mentoring and Guiding - You are not going to do the same thing always, so train , monitor and groom Indika Maligaspe
  • 14. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Discipline - while planning, coding, versioning, releasing ...Discipline - while planning, coding, versioning, releasing ... – is difference between a cowboy and an seasoned engineer – is "controlled behavior resulting from training , study and practice" – Indiscipline is Caused by lack of focus, laziness and the view that you are doing a job and not as an art. Indika Maligaspe
  • 15. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 AttitudeAttitude – Desire to solve problems and see through to the end – Always learning and ready grow • How do you get knowledge – Read, Study, Leverage User Groups – Participate in the community (Apache / stackoverflow / stackexchange/javaranch/ PyCon / Macsheble) – Collaborate with colleagues Indika Maligaspe
  • 16. What's needed for todays Software EngineerWhat's needed for todays Software Engineer July 2014 Contribute –Contribute – The best way to feel good about yourself – Blogs – Train/Coach – Participate in the community (Apache / stackoverflow / stackexchange/javaranch/ PyCon / Macsheble) Indika Maligaspe
  • 17. July 2014 Indika Maligaspe Thank You Reservations Gateway Inc.Reservations Gateway Inc. YOUR LINK to e-TRAVEL SOLUTIONSYOUR LINK to e-TRAVEL SOLUTIONS Reservations Gateway Inc. Reservations Gateway Inc. 11654 Plaza America Drive , Unit 645 Reston, Virginia 20190-4700 USA 703 286 5331 703 433 0146 info@rezgateway.com www.rezgateway.com Tel : Fax : Email : Web :