Version control systems like Git allow developers to work collaboratively by tracking changes to source code over time. Automated testing is important and comes in many forms like unit, integration, and acceptance testing. Code quality tools enforce standards, measure test coverage, and help find bugs. Developers should try various programming languages and integrated development environments to expand their skills and perspectives. Cloud hosting, containers using Docker, and continuous integration/deployment pipelines are important architectures and concepts in today's IT industry. Personal projects allow experimenting with new technologies outside of work.
We talk a lot about managing an agile team, agile transformations and about Scrum, Kanban, TDD, CI, small nimble companies about building positive motivation.
It's all a set of beautiful buzzwords. A lot of people make living coaching and helping to make transformations. But as it comes to real work in the companies - reality rarely resembles beautiful stories from trainings. Why?
An attempt to answer this question is model "Truly Agile Company", which is trying to catch the complexity of the transformation of the company. An attempt to capture the key roles and aspects often overlooked by the "Dogmatic Agile."
Let's try to think about:
• What is the "Pragmatic agile"?
• How to work effectively with all key aspects of Agile transformation?
• How not to get lost?
• How to work with people and build on their potential for change?
Have you ever wanted to become a developer? Maybe just learn more about what being a developer means? In this talk, we'll cover what it means to "be a developer" and the steps you can take to progress towards that goal. Even if you don't want to write code all day, we'll discuss ways that will help you speak the same language as a developer.
GDSC MESCOE is here with its very first event - LET'S TALK ANDROID Dev with Shreyas Patil.
Android app development is pivotal for businesses to reach out to more customers, improve their sales, brand image and create a loyal customer base.
So if you have myths, questions, or an unquenched thirst to know more about Android, this is the perfect session for you!
How to deliver the right software (Specification by example)Asier Barrenetxea
Talk about Specification by Example. What's the problems it tries to tackle and how to solve them.
I gave this talk at Thoughtworks on a "lunch and learn" meeting for the company.
This is a new version of my previous presentation about "Specification by example"
https://www.slideshare.net/AsierBarrenetxea1/spec-byexample-v2
We’re all doing Agile nowadays, aren’t we? We’ll all delivering software in an Agile way. But what does that mean? Does it mean sprints and stand-ups? Kanban even? But what about Extreme Programming? If as a development team we’re not using pair programming, test driven development, continuous integration, and other XP practices, then we’re not really doing Agile software development and we may be on a march to frustration, or even failure.
I’m going to look at why the current trend of companies and projects adopting Scrum, calling themselves Agile, but not transitioning their development to XP, is a recipe for disaster. I’d like to cover the main practices of XP as well as other good practices that can really help a team deliver quality software, whether they’re doing two-week sprints, Kanban, or even Waterfall.
https://www.youtube.com/watch?v=aZgnY9fAHOA
We talk a lot about managing an agile team, agile transformations and about Scrum, Kanban, TDD, CI, small nimble companies about building positive motivation.
It's all a set of beautiful buzzwords. A lot of people make living coaching and helping to make transformations. But as it comes to real work in the companies - reality rarely resembles beautiful stories from trainings. Why?
An attempt to answer this question is model "Truly Agile Company", which is trying to catch the complexity of the transformation of the company. An attempt to capture the key roles and aspects often overlooked by the "Dogmatic Agile."
Let's try to think about:
• What is the "Pragmatic agile"?
• How to work effectively with all key aspects of Agile transformation?
• How not to get lost?
• How to work with people and build on their potential for change?
Have you ever wanted to become a developer? Maybe just learn more about what being a developer means? In this talk, we'll cover what it means to "be a developer" and the steps you can take to progress towards that goal. Even if you don't want to write code all day, we'll discuss ways that will help you speak the same language as a developer.
GDSC MESCOE is here with its very first event - LET'S TALK ANDROID Dev with Shreyas Patil.
Android app development is pivotal for businesses to reach out to more customers, improve their sales, brand image and create a loyal customer base.
So if you have myths, questions, or an unquenched thirst to know more about Android, this is the perfect session for you!
How to deliver the right software (Specification by example)Asier Barrenetxea
Talk about Specification by Example. What's the problems it tries to tackle and how to solve them.
I gave this talk at Thoughtworks on a "lunch and learn" meeting for the company.
This is a new version of my previous presentation about "Specification by example"
https://www.slideshare.net/AsierBarrenetxea1/spec-byexample-v2
We’re all doing Agile nowadays, aren’t we? We’ll all delivering software in an Agile way. But what does that mean? Does it mean sprints and stand-ups? Kanban even? But what about Extreme Programming? If as a development team we’re not using pair programming, test driven development, continuous integration, and other XP practices, then we’re not really doing Agile software development and we may be on a march to frustration, or even failure.
I’m going to look at why the current trend of companies and projects adopting Scrum, calling themselves Agile, but not transitioning their development to XP, is a recipe for disaster. I’d like to cover the main practices of XP as well as other good practices that can really help a team deliver quality software, whether they’re doing two-week sprints, Kanban, or even Waterfall.
https://www.youtube.com/watch?v=aZgnY9fAHOA
MLOps (a compound of “machine learning” and “operations”) is a practice for collaboration and communication between data scientists and operations professionals to help manage the production machine learning lifecycle. Similar to the DevOps term in the software development world, MLOps looks to increase automation and improve the quality of production ML while also focusing on business and regulatory requirements. MLOps applies to the entire ML lifecycle - from integrating with model generation (software development lifecycle, continuous integration/continuous delivery), orchestration, and deployment, to health, diagnostics, governance, and business metrics.
To watch the full presentation click here: https://info.cnvrg.io/mlopsformachinelearning
In this webinar, we’ll discuss core practices in MLOps that will help data science teams scale to the enterprise level. You’ll learn the primary functions of MLOps, and what tasks are suggested to accelerate your teams machine learning pipeline. Join us in a discussion with cnvrg.io Solutions Architect, Aaron Schneider, and learn how teams use MLOps for more productive machine learning workflows.
- Reduce friction between science and engineering
- Deploy your models to production faster
- Health, diagnostics and governance of ML models
- Kubernetes as a core platform for MLOps
- Support advanced use-cases like continual learning with MLOps
Best Software Development Experts For AI Apps .pdfKrishSrinivasan2
In the ever-evolving world of technology, software development experts are the unsung heroes who bring innovative solutions to life. They are the wizards behind the curtain, transforming ideas into functional applications that revolutionize industries.
Implementing DevOps is one of the most important investments a growing Salesforce team can make. An effective DevOps process can greatly reduce release overhead and ensure faster feature and bugfix delivery. But there is no easy solution for Salesforce DevOps: there are a multitude of options out there with varying levels of complexity. Do you buy a third-party solution, or build your own using Salesforce DX and other tools? Technical Architect, Chandler Anderson will share his experience working with various Salesforce DevOps solutions and give some insight on what might work for you.
Similar to The essentials of the IT industry or What I wish I was taught about at University (20)
So much of the time, we get bogged down in senseless process, causing delays to delivery and reduced morale in the team. Agile frameworks implicitly build trust; this talk introduces the TRUST Framework, which attempts to bring trust management as an explicit part of how we effectively manage projects and relationships.
We start with this simple Axiom: maximising trust throughout the organisation, in all directions, creates a more efficient and happier working environment, resulting in higher value creation for the organisation and its stakeholders.
This talk challenges how we think about trust and cover practical actions to build trust in your teams.
Platform Security IRL: Busting Buzzwords & Building BetterEqual Experts
Practical tips and heroic war stories on how to secure a large, modern, fast software delivery platform. From building a team to building cool stuff, dealing with organisational setups to dealing with security incidents.
Zero Buzzwords Guaranteed.
Chris Rutter has spent the last few years obsessed with making security, engineering and the business work together. Starting his career as an engineer, he uses a deep understanding of Agile, Devops, and product delivery to solve security problems in a way that enables teams, rather than hitting them with bricks.
Software development practices & Infrastructure as Code - how well do they wo...Equal Experts
Infrastructure as Code (IaC) has rapidly become a key part of cloud native engineering. The hard gained experience from writing software can be applied to infrastructure, but fundamental differences means some fundamental approached need to be reconsidered. This talk will explore the implications for test driven development and build pipelines applied to IaC.
Jon Barber is an Engineer with Equal Experts.
He has been paid to write software for over 30 years, and has spent most of his time recently in the platform engineering space. He’s a keen advocate of XP values and practices, and sees himself more as an engineer than craftsman.
A Whole Team Approach to Quality in Continuous Delivery - Lisa CrispinEqual Experts
Watch the video at https://www.equalexperts.com/expert-talks/a-whole-team-approach-to-quality-in-continuous-delivery/
It’s not uncommon for teams practicing, or moving towards, continuous delivery to face a growing backlog of customer-reported bugs and struggle to maintain their deployment cadence. If a team has testers, the testers may be expected to continue with their same testing activities, without any thought as to how those can be fit into CD. Teams without testing specialists often struggle with insufficient coverage from their automated regression tests, and they may miss serious problems entirely because of inadequate exploratory testing.
How can teams build confidence to release small changes so frequently? It’s not just about testing, it’s about finding ways to build quality into the product. This interactive session will introduce:
• a pipeline visualization exercise teams can do to find ways to fit in all testing activities, including manual ones, and shorten feedback loops
• using a test suite canvas to determine the minimum automated tests needed
• ways testing specialists help teams prevent defects and transfer testing skills across the team
This is a session for everyone on the software delivery team, who may or may not have experience with continuous delivery and deployment.
SPEAKER:
Lisa Crispin
Lisa Crispin is the co-author, with Janet Gregory, of three books: Agile Testing
Condensed: A Brief Introduction, More Agile Testing: Learning Journeys for the Whole Team, Agile Testing: A Practical Guide for Testers and Agile Teams; the LiveLessons Agile Testing Essentials video course, and “The Whole Team Approach to Agile Testing” 3-day training course offered through the Agile Testing Fellowship.
Lisa was voted by her peers as the Most Influential Agile Testing Professional Person at Agile Testing Days in 2012. She is co-founder with Janet of Agile Testing Fellowship, Inc.
Please visit www.lisacrispin.com, www.agiletestingfellow.com, and www.agiletester.ca for more.
Lisa is currently a Fellow Quality Owner at OutSystems, helping with the observability practice.
When organisations begin to adopt Continuous Delivery, engineering teams begin to deliver at a pace that can create a strain on other parts of the business. Security teams often struggle to adapt to this faster delivery model, but that doesn’t need to be the case.
In this talk, Stuart will discuss a few ways you can take advantage of continuous delivery to make security a first class citizen of software engineering. Grounding the theory with real world experience, he’ll share a few stories of how other organisations have used these ideas to transform their delivery.
SPEAKER: Stuart Gunter
Stuart is the Security Practice Lead at Equal Experts. He has over 20 years experience in software engineering, architecture and security. He has worked with a variety of public and private sector organisations across a range of industries, helping them effectively embed security within agile delivery.
Smoothing the continuous delivery path a tale of two architectures - expert...Equal Experts
What makes Continuous Delivery easy and what makes it hard?
How much impact do your tech and architectural choices have on it?
Should you start with a .Net monolith or go-lang microservices?
This session shares lessons learnt by two teams, with very different tech and architectures, but who both were successful in their continuous delivery journey.
Speaker:
Lyndsay Prewer
Lyndsay is an agile delivery consultant with over 20 years' experience of helping individuals, teams and organisations improve their software delivery. He’s currently working with Equal Experts, at a variety of public and private sector clients.
Embracing collaborative chaos (April 2020) by Lyndsay PrewerEqual Experts
Today’s systems are inherently complex, with some component parts often operating in or close to suboptimal or failure modes. Left unchecked, as complexity increases, the compounding of failure modes will inevitably lead to catastrophic system failure.
Chaos Days help us address this risk by spending time deliberately inducing failures, then analysing the response.
This session summarises our experience of running Chaos Days on a large scale platform. We’ll explore the what, why, how and when of running a Chaos Day, plus tips for running them remotely.
Design Systems: Designing out Waste, Designing in ConsistencyEqual Experts
Design Systems help modern innovative companies build new software quickly without waste and with a consistent look and feel.
They are the single source of truth to allow the teams to design, realise and develop a product.
From our work with Design Systems for Equal Experts' clients we have many learnings to share about benefits and risks and what needs to be overcome to get a system live and adopted.
SPEAKER: David Hawdale. Product and UX person at Equal Experts.
Contact www.equalexperts.com
Contact David: david.hawdale@hawdale-associates.co.uk
Growing Together - software development in the Developing worldEqual Experts
Earlier this year EE partnered with VSO to help farmers in rural Bangladesh. This is the story of how we went from inception to production in four weeks and the challenges of developing software half the world away from home
Infrastructure - a journey from datacentres to cloudEqual Experts
What is infrastructure, and how do I avoid it forever? Where does the software that runs so much of the world, actually run? In this talk, we look at the terms "infrastructure" and "platform", what they currently mean and how they are built and managed; we rant about how bad a metaphor "The Cloud" is; and we speculate wildly about the future for our servers, our planet and ourselves
Data Science In Action: Prenatal Screening for Down SyndromeEqual Experts
Disorders like Down Syndrome have serious health implications for both the baby and mother, meaning that robust screening is crucial. Traditional means however, carry an unacceptable miscarriage risk. Using blood tests and machine learning we are able to accurately and safely predict whether a fetus will have Down Syndrome within weeks of conception.
This talk discusses how a FTSE 100 publishing house confronted the urgent need to transform to meet the challenges and opportunities created by a changing world. Despite the fact that there was plenty of time, money and will to succeed, almost straight away, their situation was revealed to be much harder than they first thought...
Telling the true story of the publishers’ attempt to navigate the choppy waters of changing ways of working combined with high levels of uncertainty, the talk covers George Harrison, Keswick Pencil Museum, the philosopher Karl Popper and Middlemarch by George Eliot. Along the way, three key lessons that were learned the hard way are shared, to help you avoid making the same mistakes.
Speaker : David Cox - Transformation Manager at Equal Experts
Obstacles of Digital Transformation EvolutionEqual Experts
The talk will focus on some things that any consultant or leader should consider when entering into an organisation that has a stated desire to transform into the most Digital organisation possible.
Speaker: Ryan Bryers, Digital Transformation and Leadership, Equal Experts
Talk given by Chris Rutter
Avoiding The Security Brick
An exploration of some common scenarios when security teams and processes seriously impact product delivery and result in questionable security benefits, and some battle-proven techniques on how to work more effectively with security while delivering at pace
Chris Rutter.
A Security Engineer / Transformation specialist who cut his teeth writing Java in Agile environments, then moved into Security Architecture and now helps teams secure their systems by making security technical rather than a tick box.
Talk given by Lyndsay Prewer Technical Delivery Manager at Equal Experts at ExpertTalks Leeds on June 11 2019.
Embracing Collaborative Chaos
Today’s systems are inherently complex, with some component parts often operating in or close to suboptimal or failure modes. Left unchecked, as complexity increases, the compounding of failure modes will inevitably lead to catastrophic system failure. Chaos Days help us address this risk by spending time deliberately inducing failures, then analysing the response.
This session summarises our experience of running Chaos Days on a large scale platform. We’ll explore the what, why, how and when of running a Chaos Day.
Talk given by Phil Parker (Partner at Equal Experts) at ExpertTalks Berlin, 14th June 2018.
Running a build server does not mean you are *doing* Continuous Delivery.
An OWASP Top 10 poster on the wall does not mean you are *doing* Information Security.
This talk explores what the real important factors of Continuous Delivery are, does the same for Information Security and then focusses in on how the two intersect and interact.
Developers, testers, ops (and anyone else working on tech teams) will learn why Continuous Delivery is actually MORE secure than the alternatives.
Talk given by Phil Parker (Partner at Equal Experts) at ExpertTalks Sydney, 27th February 2018.
Continuous Delivery requires “a close, collaborative working relationship between everyone involved in delivery” but - as you are probably all too aware - most organisations don’t structure teams (or software) to achieve this.
This talk explores what the communications structures of our organisations really are, and how they should best serve the systems we design? A Continuous Delivery talk with no mention of Continuous Integration, virtually nothing on Deployment Pipelines and a real effort not to mention DevOps (people, teams or mindset!) This is a lot about Organisations and Domains (a definition of the latter will be forthcoming), but mostly it’s about People…
Cracking passwords via common topologiesEqual Experts
Hugo Ferreira, one of our Developers, presented this talk – "Cracking Passwords via Common Topologies"" – during Pizza Talks Lisbon, on the 29th of November 2017
Description:
A brief overview of how typical password complexity policies and common human behaviour conspire to create easily hackable systems, and what you can do about it as a developer.
Useful Links:
* [OWASP](https://www.owasp.org)
* [Testing Guide](https://www.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents) for securing web applications
* [Authentication Cheat Sheet](https://www.owasp.org/index.php?title=Authentication_Cheat_Sheet)
* [Have I been pwned? Check if your email has been compromised in a data breach](https://haveibeenpwned.com/)
* [Pwned websites](https://haveibeenpwned.com/PwnedWebsites)
* [Pwned Passwords](https://haveibeenpwned.com/Passwords)
* [dropbox/zxcvbn: Low-Budget Password Strength Estimation](https://github.com/dropbox/zxcvbn)
* [test zxcvbn interactively](https://lowe.github.io/tryzxcvbn/)
* [KoreBlog PathWell - Top 100 common topologies](https://blog.korelogic.com/blog/2014/04/04/pathwell_topologies)
Taking as examples a real greenfield and brownfield project the talk describes how agile delivery can address the challenge of getting quickly to grips with complex project domains by using a range of lean tools and techniques as part of a structured inception phase.
In case of the greenfield project the goal was to build sufficient understanding to be able to define a valuable and realistic release (MVP) roadmap, while in the case of the brownfield project, the challenge was more in terms of decomposing / splitting an existing monolithic application in the right way.
Besides illustrating how theses challenges were addressed in practice, this talk will outline a generic inception framework and suggest a range of techniques, tools and methodologies out of which agile project teams can 'compose' a skeleton framework to address the challenges they face in their projects, always - of course - with the key goal in mind of delivering value early while staying close to user and business, and focus on keeping quality high, mitigate risks continuously, and build a trusted relationship with our clients.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
The essentials of the IT industry or What I wish I was taught about at University
1. Core Tools and Concepts of
Today's IT Industry
Or what you should look into before getting your first IT job, if you don't want to
spend your first 6 months dealing with a very steep learning curve
2. A little about me
● Samuel Durand
○ French, developer, hiker and food lover
● Graduated in Software Engineering at the University of Belfort (France) in 2014
● 5 years of experience in software engineering
○ 4 years at Cake Solutions (acquired by Disney in 2017)
○ 1½ year at Equal Experts
● Contributed to a large variety of projects
○ Moneysupermarket / Disney / Co-op / HMRC / Very ...
○ Java / Scala / JS / Typescript / Python, C# ...
○ Variety of roles: developer / devops* / qa* / full-stack consultant
3. What we will talk about
Software development tools
● Version control systems
● Testing and TDD
● Code metrics & checking tools
● Coding languages worth trying
● Development environments
Architecture and key notions
● Cloud hosting
● Docker and Containers
● CI/CD
● Personal projects
4.
5. Version control systems
Designed to keep track of any and all changes done to the source code
● Essential to any project based on programming code
● Allows team members to work on several features at once without hidden risk of interference
● Supports both local and remote repository
6. GIT: the swiss knife
of version control
● The most popular by far
● Rich in features (10% only used everyday)
● Uses branches (especially useful for large teams)
● Widely supported
● Changes recorded locally and remotely at once
● 90% of open source projects use it
7. Automated Testing
● Never deploy to prod without writing tests
○ Find bugs before production
○ Maintainability
○ Confidence when changing things
● Multiple type of tests
○ Unit tests
○ Integration tests
○ Acceptance/Functional tests
○ End to End testing
○ Architecture deployment tests
● There is no "one-size-fits-all" strategy
● TDD: Test Driven Development
8. Code metrics
Code style checkers
● Enforce a coding standard
● Avoid some type of bugs
● Keep the code clean
● Teaches you good practices
Code coverage
● Percentage of code covered by tests
● Helps to find missing tests
● Possible to get a visual overview
9. Programming languages
Try as many languages as you can:
● Compilable, transpilable, translatable...
● Typeful or typeless
● Object oriented or functional
● Each have some unique particularities
● Different approaches and perspectives
Here is a good list to start with:
● Java: OO and widely used
● Scala: OO + FP and typesafe
● JS: total freedom (too much ?)
● Kotlin: the rising star
● C#: Microsoft .NET
● Python: data processing
● Clojure: prefix syntax (the new Lisp)
● Go: the new C
● Bash: still not dead… a must for Linux
10. IDEs: Integrated Development Environments
VS Code
● Still young but promising
● Wealth of plugins
● Entirely free
Visual Studio
● Preferred choice for C#, F#, .NET
● Powerful shortcuts
● Very stable and reliable tools
Intellij
● Currently the best for Java/Scala
● Variants exists for other languages
● Free community version
11.
12. Cloud hosting
It's probably what that devops guy was talking about this morning, with foreign words and acronyms...
Many options, all similar, all worth exploring…. and it's free ! (maybe even get a certification ?)
13. Docker: The very popular blue whale
● The most popular alternative to virtual machines
● Manages app wrappers called containers
● Used in almost every company, in one form or another
● Great tool both for development and production
15. Personal projects
Not every jobs will give you the chance to learn a lot of new tech, or experiment.
The solution ? Create some personal projects !
● Gives you the chance to experiment
● Can be made valuable on a CV if you build something that is used by people
● Most paid tools are free to use for personal development (including online deployment)
● Should be as far as possible from what you do on a daily basis
○ Forces your brain to stretch in different directions
○ If based on a concrete goal can be financially rewarding
○ If not, then it will provide some relaxation and satisfaction
16. ● You need a single core programming language, from there you can learn anything
● Books about coding or frameworks are a waste of money, focus instead on patterns and techniques
● Staying in the same company in the same position for more than 4 years is bad (in most cases)
● If you are given the chance to work on something you are uncomfortable with, take it !
● Choose a small set of techs and keep up to date with its latest news and updates
My personal opinion on some stuff
17. You don't need to know
everything !
The essential is to know that something is possible, be able to name the concept,
and then have the skills required to search for it in any given tech
What to take away from this talk...