You have an opportunity to be among the first in Europe to pass through the Software Developer Exam (SDE – Java) – the original Authentic Examination™, developed in collaboration with Carnegie Mellon University, USA. The SDE requires examinees to design, write, compile, debug, test and check-in (submit) software in the context of an existing project. Authentic examination™ is a specialized from of performance-based assessment. It is the only method that accurately measures the test-takers' ability to program realistic problems in a professional programming environment. The examinee is put in the role of a professional software developer and has an opportunity to demonstrate skills by building solutions to tasks defined in the context of real software projects. • Authentic ExaminationTM presentation: https://youtu.be/Alf9BjlDP94 • How it works: https://youtu.be/h6XyE0N_KjE • Self-preparation materials, strongly recommended to be completed by the exam taker before the taking the exam: http://proxor.com/page/howtoprepare
Too many of our organizations across society have poor leadership. It doesn't matter if we're talking about the military, private sector firms, or the local Cub Scout pack. Great leaders help us get the most out of our teams and ourselves, not just at the high meta level, but during each day's grind. In this session we'll talk about why you might consider stepping up into a leadership role (or evolving one you're currently in), and what things about yourself you can leverage and improve upon. It's also important to understand routes you can take to leadership. Most importantly we'll talk about getting the job done on a daily basis so you can help your team be as awesome as possible. You'll leave this session with some questions to ask of yourself, and some ideas on furthering your own leadership journey.
You don't have to be a chai latte addicted hipster to know that visual design is important. It is the visible layer of your code and you want it to reflect the ideas behind your project in a way that users will find it trustworthy and pleasant. In this workshop we'll go through the tools of visual design (colour, type, and layout) and learn how to use them practically. With real world examples of good design and a few tips and best practices, you'll be able to give better feedback and communicate with your designers in their own language.
There is no better way to learn than by doing. And games are a great way to do that and very popular in the LEAN community. The Kanban Board Game is designed to show the basics of Kanban and is part of the Kanban trainings that ESI CEE organizes regularly in Bulgaria. It helps participants in the game understand how to apply Lean - Kanban to software development and IT-enabled services specifically. The Kanban Board Game is facilitated by an experienced coach by ESI CEE who shows the concepts and mechanics of Lean-Kanban for software development in a class or workshop setting. It’s hands-on, engaging, and fun. (REPEATS IN THE AFTERNOON AT 14:00)
The idea is to organize a hands-on lab for hacking a simple Web page. There will be series of actions that you need to undertake in order to change the content of a Web page. The task will appear simple initially and most people will try the basic stuff like SQL injections and XSS vulnerabilities while the solution will be different and much more intriguing. There will be materials to read in advance and prize in the end for whoever made it or was closest to the solution. Note: Please bring your own machine. Take some time to check these tools/materials in advance: https://portswigger.net/burp/ https://forum.bugcrowd.com/t/researcher-resources-tutorials/370 Attendees are expected to know at least one scripting language.
Why? We don't ask it enough. We don't ask it enough of our politicians. We don't ask it enough of our colleagues. We certainly don't ask it enough of ourselves. Take some time during this session to explore how thoughtfully and respectfully pushing back on accepted norms in software delivery can help you deliver much better value to your customers. We'll look into how you can explore why your processes seem so convoluted. We'll question why your meetings might be smothering your productivity. We'll look at why your engineering/craftsmanship/phrase-du-jour approaches to writing code might be killing your quality--and sanity. We'll also look at ways you can work at injecting some much-needed change into your organization in order to address some of those "why" issues. Sorry, we're not going to address anything about politicians. Handle that in your upcoming elections!
The ideas behind the Internet of Things (or Cyber-Physical Systems, or Machine-to-Machine Interoperability, Industrie 4.0, or several other names) are not particularly new; indeed, what has happened is really a convergence of existing technologies and corporate strategies. As the number of sensors in the world rapidly outpaces the world population, and concepts of Big Data for real-time, predictive analytics comes to the fore, new market opportunities appear. In fact, the world will see major disruptions in transportation, financial management, medical devices and other markets as "Internet thinking" moves into the industrial domain. We call this the Industrial Internet. The Industrial Internet Consortium (IIC), led by its members and with the support of open standards organizations, open source organizations and international research organizations, exists to bring together those players to collaboratively build and manage testbeds for IoT-enabling industrial systems, in order to identify new products & services, as well as priorities & requirements for standards to support adoption of these ideas. This collision of the Industrial Revolution with the Internet Revolution will not be without pain, and there are still both scientific & engineering challenges (not least issues of security and privacy). Dr. Soley will introduce the Industrial Internet concept, the IIC, and report on the organization's status & plans. --- Keynote at the afternoon of November 19
Historically, “usability” refers to post-design measurement and testing. Following existing software development methods, it is entirely possible to create a system that is neither useful nor intuitive but meets usability guidelines. A design process is needed to ensure a product that is both useful, usable and innovative. This presentation will answer the following questions: a) How complex software is evolving to support true innovation b) Why this will usher in a new era in product development, rather than the "Band-Aid" approach or shoehorning in of additional features c) How the risk associated with existing software development processes such as Waterfall and Agile can be significantly lowered by following a process of design and usability.
When was the last time you saw a blind man at the street? Could he be your colleague or a friend of yours? Sometimes we watch but we do not see. Sometimes we focus on the goal without enjoying the whole journey. Accessibility is not only our social responsibility, but might be also a chance for creativity and better design. What if we make you change your views and leave all of your stereotypes in just an hour. Corporate software should be accessible and after our session, you will know why it is worthy!Login to view the video from this session!
Topic: Scaling Agile - Mission Possible or not? Learning outcomes: - Will understand why scaling is a tricky thing and why scaling is a big problem for the agile world - Will see a couple of bad practices and reasons why we have to avoid some common sense steps. - Some workarounds for medium sized teams - Will learn what the Scaled agile framework – a full practice and bunch of rules and approaches which give us full solution for the scaling issue. It is a framework which is applied by the biggest companies which implement agile and lean. Target audience: - Software development team members, leaders and managers, also all kind of people working in teams - Not technical - Mid-level of experience and knowledge in Agile. Abstract: - Will talk at first about Agile and lean overview and basics - Will point the problems and explain why scaling agile methods is a big issue - Talk about scrum-of-scrums and some common practices applicable for medium-sized teams - Explain the Scaled Agile Framework in details and how it works for huge teams - Real case examples and lessons learnedLogin to view the video from this session!
Chobolabs Co-Founder and CEO Deyan Vitanov will talk about how startups are different from established companies and what it takes to get a venture off the ground, covering topics such as team building, fundraising, idea validation, and searching for product-market fit.Login to view the video from this session!
With Windows 10 IoT Core. The presentation will try to showcase almost all the Windows way of development for IoT in one go. The functional goal is to create a solution that will administer a reflex test, to find you how much of a ninja you are, and record the results, Arduino Uno Windows Phone and Raspberry Pi will do all the magic. Of course we will talk a lot of Visual Studio and how to do get near to our goal using it. I hope it will make a compelling case e for Windows 10 on small devices, and be informative and entertaining.Login to view the video from this session!
This would be a talk about accessibility in todays software development. The talk will go through the standards and will focus on readability, semantics in shapes and colors, usage of screen readers, color blindness and digital dyslexia. Also it will focus on the highest standards for high contrast which is required by most big companies and governments.Login to view the video from this session!
A large portion of services and functionality of modern information systems are accessed through web browsers forming tapestry of vendors and platforms. This makes cross-browser testing of functionality, performance and user experience a hot topic for every company that provides such services. For those companies implementing and using appropriate toolset and infrastructure can be complex, time-consuming and costly endeavor. This presentation will introduce the concepts and explore different implementations of cross-browser testing, based on combination of popular and well-developed open source and paid tools and services. The purpose of the comparison is to explore in each case and as a whole: Capacity to solve tasks related to cross-browser testing Ease/complexity of use Technical efficiency Cost effectivenessLogin to view the video from this session!
There is no way to pinpoint the moment it happened, but when you type 'cloud' in your search engine, you can't expect the meteorological object anymore. It is now attached to 'computing'. As well as IaaS, PaaS, SaaS, DevOps, AWS, GAE, Azure, Docker, Vagrant, Kubernetes; and the list never ends. Vendors add confusion with specifics on how a platform should look like. Already lost? Join us at this session for a way out. - what are the ingredients of a cloud platform - what is the minimal set of features you need between your app and the bare infrastructure - how you can build а PaaS yourself and break the shackles of existing platforms to enable new inventions Less theory, more practice; for beginners and for frequent fliers in the cloud.Login to view the video from this session!
In 2013 I postulated that software system performance has a soft side – the user perception – and that it is a significant factor for the success of a system. In 2014 we looked at messages and saw that how software systems communicate to users is very important for users' ability to use a system. This year I propose we take a look at how soft performance can be measured. We will talk about user satisfaction scores, orientation coefficients, and success rates. We will see that higher scores in these usually predict better performance but not always.Login to view the video from this session!
In recent years, the mobile evolution caused many developers to find themselves migrating from desktop application to web application. In this session we will explore how to make the transition from XAML & C# to HTML5 & JS. We will review how to port the MVVM design pattern to the web environment, and other to tackle important architecture concepts, such as dependency injection and modularityLogin to view the video from this session!
We are Dimitar Goshev (Software QA Engineer) and Mihail Parvanov (Manager, Software QA Engineer) from Telerik’s ASP.NET AJAX team. As QA Engineers our main responsibility is to ensure the delivering of a fully functional suite of 80+ ASP.NET controls every 4 months, accompanied by a demo site of 1300+ pages, showcasing different controls’ scenarios. As you could expect for a site of this scale, it happens occasionally that some web resources (scripts, styles, images) are missing when requested or there are server errors thrown by services or entire pages. And the chances for something going wrong skyrocket, when that site should be migrated, its resources restructured and unified in no time. Catching such issues by the means of manual testing would take significant amount of time and would be highly inefficient, so there was a call to build up an automated testing solution. Throughout this session we intend to provide a general insight into a free automated web testing solution we created at Telerik’s AJAX, using one of the most popular network monitoring tools – Fiddler. It will show the audience a convenient way to automate common web objectives testing, including web sites and web applications, services and application interfaces. What we are aiming to present is divided into two main parts: 1. Automating Fiddler through its API and generating web session reports based on custom criteria, detecting response failures, for example: • Client-side failing requests for all kind of web resources; • Server-side errors; • Unavailable web pages; 2. Traversing a site’s web pages in a browser using well known C#, MS Build and the Telerik free web testing framework. Finally we will show how the two parts could be combined into a single test system, which provides a thorough status overview of our 1300+ pages demo web site with hundreds of thousands requests checked within a couple of hours. The great advantages of our solution are the ease of implementation, maintainability and that it requires no additional budget. Using Fiddler – a free well known web debugging tool – makes this approach suitable for different kind of web technologies. And last, but not least, another main benefit of using such an approach includes the flexibility of the solution. It enables automation engineers to extend our tool’s functionality according to their own needs – changing page traversing logic or failure detection rules.Login to view the video from this session!
All automated tests, other than unit, are slow and unreliable for the fast development pace every company craves. When such test fails, it’s hard to pinpoint the exact reason why. There are lots of external dependencies and factors outside of your control. We had automated tests running for more than 3 hours every night. The execution time just kept growing unrestricted, and the tests were getting more unstable and unusable as feedback loop. At one point the continuous integration build for the tests was red for more than 20 days in a row. Regression bugs started to appear undetected in production. We decided to stop this madness and after considerable effort and dedication, the same tests currently run for 3 minutes. This is the story of how we achieved 60x faster tests. Having automated tests run that fast completely changes the software development game. No need to wait for the nightly tests to complete. No more smoke tests. Run all tests now. Get fast feedback. Release instantly. Do not fall behind. We believe that in the near future this will be standard practice, much like infrastructure as code, or continuous integration are today. In order for a company to stay competitive, _all_ existing automated tests — static code analysis, unit tests, API, UI, should complete in less than 5 minutes after _every_ code, database or infrastructure change. The presentation is technical and touches on topics such as test automation framework design, hermetic servers, optimizing test environments for speed, architecture for testability, DevOps collaboration, virtual containers, reliable tests when depending on services outside of your control, the joys and pitfalls of parallel execution.Login to view the video from this session!
Shipping quality products needs tests, tests and tests again. And you'd better automate these! But this is not an easy task. Do your tests fail because of polluted environment? Maybe some environment variables, database records or files are left behind by other processes? Or do they step on each other toes? They run in parallel and use the same files, databases or too much CPU and memory? Do you find it hard to structure your release build? You need to cut final release only for the binaries that passed validation. And in real life validation has to be done for several environments. Join us to understand how the trending containerization technology helps address these problems. We’ll briefly talk about what containers are and what they are used for. To solve portability, parallel execution and resource sharing issues we’ll show you how to run your tests in clean and isolated container environment. Finally we’ll use Concourse CI and Docker images to build pipelines that automate your CI tasks from source code to final release. By the end of the session you will have a general understanding on how to use Docker images and how to build a Concourse pipeline.Login to view the video from this session!
With advances in technologies it is now feasible to solve complex problems in embedded systems and on mobile devices in real-time. Last year the company NVIDIA introduces the first mobile high-performance system on a chip (SoC) named Tegra K1. In addition to other components, it contains 192 processing cores for high-performance computing. We’ve used this platform during our research project and we’ve implemented machine learning techniques that are processing several video feeds and multiple sensory inputs. During our talk we will present how we’ve unlocked the full potential of Tegra K1 platform and created a novel solution that is addressing a global grand challenge.Login to view the video from this session!
The number of devices that are online increases every day. The quantity of digital content that is produced every year sets new record each time. Last but not least clients are more and more demanding. A cloud provider offers us a great basket of resources but we need to know how to use and manage them. In this session we will talk about how to scale over this limits and how to be prepared for this kind of situations. If we are designing our system to be prepared to scale over cloud services limits then we will have a system that will be used in 5 year from now. We will talk about different scenarios when it is easy to reach different limits and we will learn how to overcome them.Login to view the video from this session!
Remember the old days, when you could build any system with just PHP and MySQL? (Or ASP.NET and MS-SQL for the Microsoft folk.) Those days are getting further and further behind us with every technology and service that comes out. Modern web-scale systems process more data than ever before, which has led to the rapid adoption of distributed system architectures that can scale and evolve fast enough to keep up with the volume, velocity and variety of this data. Different aspects of these architectures often require specialized solutions, leading to systems with multiple moving parts and multiple internal connections. In this talk we'll explore how to build distributed data analytics systems with the lambda architecture, which takes advantage of both batch-processing and stream-processing technologies, to provide a more comprehensive analysis of the data. We’ll use Couchbase Server as the main data store component in our architecture. In addition to its straightforward role as a very fast data store and distributed cache, we'll see how Couchbase can be used as a backend for event processing systems, a primary ingestion point for streaming data, a message interchange hub and more. We'll examine some common use-cases that tie together popular open-source technologies including Kafka, Storm, Spark, ElasticSearch, Hadoop and others, which in turn lets us create everything from a real-time data analytics system, to an IoT event processing engine, to a massive e-commerce platform. And while it's hard (i.e. expensive) to demonstrate really large scale distributed systems, we'll see smaller scale, live demos of some of the more interesting architecture options.Login to view the video from this session!
The interest in Docker and container technologies in general has skyrocketed in the last two years. It is seen by many as the next step in Continuous Delivery (CD), making it faster, more predictable and secure. In this presentation we would explore how Docker can be used for Continuous Delivery. First we would examine a “standard” Java Enterprise landscape using Jenkins, Maven, Nexus, etc and use it to highlight issues that me and my team have experienced in our current project. Afterwards, we would take a deeper look at Docker containers and showcase how they can improve upon our process. A demonstration of the “dockerized” solution would be presented to support the discussed topics.Login to view the video from this session!
There are times that either your budget does not allow you to buy licenses for test automation or simply the tools are not good enough to help you automate testing for your needs. In both cases you face the decision whether and what to automate or simply not to and go ahead with manual testing. The presentation would show how to build sustainable and extendable GUI test automation framework with the help of open source tools that can cover scenarios like: • Be able to automate both Web and Desktop applications, including interactions with both environments in single test execution • Test reuse techniques - have ability to execute one and the same test with no modification against Web, Desktop or other type of UI • Rapid test development techniques that allow modeling the structure and behavior of the UI in code efficiently, or how to optimize page object model for better results and properly use late binding to GUI objects • Combine text and walkthrough snapshot logging that facilitates faster analysis of problems detected during execution even from your colleagues not involved in test automation, including development and analysts • Architecture your test automation framework for future challenges – constant increase of number of tests while keeping same test execution time.Login to view the video from this session!
There are many great tools available for debugging and profiling Java apps. There is however one big problem with all of them when it comes to debugging and profiling apps in the cloud: because of the very verbose Java Debug Wire Protocol (JDWP) and the high latency naturally associated with cloud networks (and WAN in general), their performance makes them practically unusable in such scenarios. This session will showcase a solution to the above problem. We shall first develop and deploy a Java app on a cloud platform. Then we shall demonstrate a unique innovative feature that allows debugging and profiling in the cloud with the performance and user experience you are used to from local/LAN scenarios. The session will be composed of live demos exclusively.Login to view the video from this session!
In May 2015, our automation team presented a successful implementation that demonstrated an innovative end-to-end software build integration and test automation. The presentation showcased how software code changes could be continuously built right after each code commit activity, and followed by a sophisticated product assembly process. The final products are subsequently pulled into a dynamically-generated test environment through a set of intelligent host and environment provisioning processes. Behind the scene, the framework employs cutting-edge software technologies to carry out all these ingenious process orchestration and automation. This state-of-the-art automation framework was designed by our architecture team as part of its Continuous Delivery Initiative which aims to enhance the productivity and efficiency of our entire product development process chain. The framework is highly flexible, adaptable and scalable. It was carefully put together with a loose-coupling design concept in mind, and is capable of supporting parallel, multi-product and multi-platform testing. As it is reusable in many ways, our team has started to take this initiative to a wider audience, and to introduce and propagate the adoption of it to the various channels of software product development within our company. In this talk, the audience will learn about the end-to-end automation framework design, along with the technologies and tools that were employed in the project, as well as how they were put together in the development and implementation. On top of that, the audience will also be presented with an overview of the project execution, and the challenges that came with it.Login to view the video from this session!
Microservices is the new buzzword for lightweight service-oriented RESTful APIs. The nature of microservices make them excellent candidate for Continuous Delivery. This session will show some of the challenges you may encounter when preparing for Continuous Delivery but also design recommendations that will make the process smoother. Sample Continuous Delivery implementation will be presented along with full service monitoring for regression.Login to view the video from this session!
IT, as one of the fastest growing industries nowadays, is on a constant quest for innovative solutions where limits of known are pushed one step further. This naturally implies a process of continuous decision making and dealing with uncertainties. Problem solving and decision making have become an intrinsic part of IT life to such an extent that we take it for granted, frequently organizing them in an ad hoc manner. Unlock the potential of IT teams, make a group of people smarter and make meetings shorter during decision sessions. We are going to present to you which techniques proved useful in our more than one decade long experience in IT business.Login to view the video from this session!
Strangling the Monolith Applying the Strangler Pattern to move from Monolithic Giants to Microservice Swarms With the rise of Cloud, Microservice Architectures are the new trend in software development nowadays. They are competing or rather complementing Docker’s notoriety. More and more people find in microservices the answers to various challenges they are facing with monolithic applications, such as complexity, fragility, resistance to change, cloud-ignorance, etc. and a great help in implementing and ensuring S.O.L.I.D. programming principles. The lack of cloud-awareness of such monolithic applications, coupled with their resistance to change, keeps companies from benefiting from the reactivity to market and adaptability that a cloud-native system can offer. Microservices, on the other hand, were born from the cloud and for the cloud. They take advantage of all its benefits and, one could argue, could even not exist without it. They also present us with a solution for shifting to a communication model that can turn Conway’s Law into a strategic advantage for the company. The dilemma faced by those who are already convinced by the Microservice architecture patterns is how to migrate their existing monolithic applications to such a model. The strangler pattern is one of the best solutions i have come across. It leverages the microservice flexibility to induce minimal changes to the existing codebase while surrounding it with more and more microservices that slowly but surely strangle its request pipeline and end up consuming it out of the solution. The presentation will start from a short history of the microservice concept, continues to describe the microservice ecosystem in the form of Cloud attributes and technologies, as well as OS-level virtualization (e.g. Docker) and ends with the presentation of the strangler pattern and a bunch of tactical examples of how to apply it for any product.Login to view the video from this session!