SOA Training Classes in Stockholm, Sweden

Learn SOA in Stockholm, Sweden and surrounding areas via our hands-on, expert led courses. All of our classes either are offered on an onsite, online or public instructor led basis. Here is a list of our current SOA related training offerings in Stockholm, Sweden: SOA Training

We offer private customized training for groups of 3 or more attendees.

SOA Training Catalog

cost: $ 390length: 1 day(s)
cost: $ 790length: 2 day(s)

Agile/Scrum Classes

cost: $ 790length: 2 day(s)

Java Enterprise Edition Classes

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Blog Entries publications that: entertain, make you think, offer insight

If you are a software developer looking for a slight change, then you have several options available. The process of software development requires multiple types of resources. A software developer performs the construction and delivery of software programs. An experienced software developer gains business knowledge, analytical skills, team management skills and communication skills. All of these skills can be used to divert your development career into a related and slightly varied role in software development.

Production Support Engineer
A developer can easily switch to the role of a Production Support Engineer. This role entails working with customers and technical teams to report, track and resolve production issues. For some, this might be an exciting opportunity to see the software application from a user’s point of view.

Engineering Manager
If you have experience in leading a team of developers, you could take the role of an Engineering Manager. This role requires managing a bigger team of developers. The Engineering Manager is also responsible for ensuring the delivery of software products and meeting the deadlines set by Product Management. You will get the opportunity to develop software, if you are inclined to do so. However, you will also take new responsibilities such as performance management, infrastructure management and vendor management.

Partner Engineer
This role requires some amount development as well as coordination with partners such as vendors and customers. The job of a Partner Engineer is to act as a middleman to help the integration of services with partners via application programming interfaces (APIs). For example, companies such as Twitter and Facebook employ Partner Engineers to integrate their services with customer websites.

Systems Analyst
Many companies offer developers with an opportunity to switch to Analyst roles. This role involves analyzing system requirements by working with business and technical teams. Many Systems Analysts also work on reviewing, developing and testing application code. This role is suitable for developers with strong analytical skills.

QA Automation Engineer
This role is responsible for automating test cases with the help of tools such as Java, Ruby and Selenium. This role is ideal for people with prior development experience. QA Automation Engineers work with developers and product managers to define test cases, and to automate and run the test cases. In this role, you will get the opportunity to work on back-end as well as front-end automation tasks. You will remain in touch with programming languages as well as database technologies.

Database Analyst
Most people gain significant amount of knowledge on databases while working as a software developer. This will help you to switch your role into a Database Analyst. A Database Analyst analyzes database issues, reviews performance problems, writes database scripts and runs queries. This role also provides a path to become a Database Administrator, if you are interested.

Deployment Engineer
This role is responsible for deploying the code developed by software engineers. You may not be developing application programs in this role. However, you will be responsible for code deployments, pushing the code into test and production environments.

 

Related:

Surprising Ways Viruses, Malware, Etc. are Infecting Computers

What is the most pressing problem in Project Management for a Software Project Manager?

Studying a functional programming language is a good way to discover new approaches to problems and different ways of thinking. Although functional programming has much in common with logic and imperative programming, it uses unique abstractions and a different toolset for solving problems. Likewise, many current mainstream languages are beginning to pick up and integrate various techniques and features from functional programming.

Many authorities feel that Haskell is a great introductory language for learning functional programming. However, there are various other possibilities, including Scheme, F#, Scala, Clojure, Erlang and others.

Haskell is widely recognized as a beautiful, concise and high-performing programming language. It is statically typed and supports various cool features that augment language expressivity, including currying and pattern matching. In addition to monads, the language support a type-class system based on methods; this enables higher encapsulation and abstraction. Advanced Haskell will require learning about combinators, lambda calculus and category theory. Haskell allows programmers to create extremely elegant solutions.

Scheme is another good learning language -- it has an extensive history in academia and a vast body of instructional documents. Based on the oldest functional language -- Lisp -- Scheme is actually very small and elegant. Studying Scheme will allow the programmer to master iteration and recursion, lambda functions and first-class functions, closures, and bottom-up design.

Supported by Microsoft and growing in popularity, F# is a multi-paradigm, functional-first programming language that derives from ML and incorporates features from numerous languages, including OCaml, Scala, Haskell and Erlang. F# is described as a functional language that also supports object-oriented and imperative techniques. It is a .NET family member. F# allows the programmer to create succinct, type-safe, expressive and efficient solutions. It excels at parallel I/O and parallel CPU programming, data-oriented programming, and algorithmic development.

Scala is a general-purpose programming and scripting language that is both functional and object-oriented. It has strong static types and supports numerous functional language techniques such as pattern matching, lazy evaluation, currying, algebraic types, immutability and tail recursion. Scala -- from "scalable language" -- enables coders to write extremely concise source code. The code is compiled into Java bytecode and executes on the ubiquitous JVM (Java virtual machine).

Like Scala, Clojure also runs on the Java virtual machine. Because it is based on Lisp, it treats code like data and supports macros. Clojure's immutability features and time-progression constructs enable the creation of robust multithreaded programs.

Erlang is a highly concurrent language and runtime. Initially created by Ericsson to enable real-time, fault-tolerant, distributed applications, Erlang code can be altered without halting the system. The language has a functional subset with single assignment, dynamic typing, and eager evaluation. Erlang has powerful explicit support for concurrent processes.

 

Computer Programming as a Career?

What little habits make you a better software engineer?

Although reports made in May 2010 indicate that Android had outsold Apple iPhones, more recent and current reports of the 2nd quarter of 2011 made by National Purchase Diary (NPD) on Mobile Phone Track service, which listed the top five selling smartphones in the United States for the months of April-June of 2011, indicate that Apple's iPhone 4 and iPhone 3GS outsold other Android phones on the market in the U. S. for the third calendar quarter of 2011. This was true for the previous quarter of the same year; The iPhone 4 held the top spot.  The fact that the iPhone 4 claimed top spot does not come as a surprise to the analysts; rather, it is a testament to them of how well the iPhone is revered among consumers. The iPhone 3GS, which came out in 2009 outsold newer Android phones with higher screen resolutions and more processing power. The list of the five top selling smartphones is depicted below:

  1. Apple iPhone 4
  2. Apple iPhone 3GS
  3. HTC EVO 4G
  4. Motorola Droid 3
  5. Samsung Intensity II[1]

Apple’s iPhone also outsold Android devices7.8:1 at AT&T’s corporate retail stores in December. A source inside the Apple company told The Mac Observer that those stores sold some 981,000 iPhones between December 1st and December 27th 2011, and that the Apple device accounted for some 66% of all device sales during that period (see the pie figure below) . Android devices, on the other hand, accounted for just 8.5% of sales during the same period.

According to the report, AT&T sold approximately 981,000 iPhones through AT&T corporate stores in the first 27 days of December, 2011 while 126,000 Android devices were sold during the same period. Even the basic flip and slider phones did better than Android, with 128,000 units sold.[2] However, it is important to understand that this is a report for one particular environment at a particular period in time. As the first iPhone carrier in the world, AT&T has been the dominant iPhone carrier in the U.S. since day one, and AT&T has consistently claimed that the iPhone is its best selling device.

Chart courtesy of Mac Observer: http://www.macobserver.com/tmo/article/iphone_crushes_android_at_att_corporate_stores_in_december/

A more recent report posted in ismashphone.com, dated January 25 2012, indicated that Apple sold 37 million iPhones in Q4 2011.  It appears that the iPhone 4S really helped take Apple’s handset past competing Android phones. According to research firm Kantar Worldpanel ComTech, Apple’s U.S. smartphone marketshare has doubled to 44.9 percent.[3] Meanwhile, Android marketshare in the U.S. dropped slightly to 44.8 percent. This report means that the iPhone has edged just a little bit past Android in U.S. marketshare. This is occurred after Apple’s Q1 2012 conference call, which saw themselling 37 million handsets. Meanwhile, it’s reported that marketers of Android devices, such as Motorola Mobility, HTC and Sony Ericsson saw drops this quarter.

I will begin our blog on Java Tutorial with an incredibly important aspect of java development:  memory management.  The importance of this topic should not be minimized as an application's performance and footprint size are at stake.

From the outset, the Java Virtual Machine (JVM) manages memory via a mechanism known as Garbage Collection (GC).  The Garbage collector

  • Manages the heap memory.   All obects are stored on the heap; therefore, all objects are managed.  The keyword, new, allocates the requisite memory to instantiate an object and places the newly allocated memory on the heap.  This object is marked as live until it is no longer being reference.
  • Deallocates or reclaims those objects that are no longer being referened. 
  • Traditionally, employs a Mark and Sweep algorithm.  In the mark phase, the collector identifies which objects are still alive.  The sweep phase identifies objects that are no longer alive.
  • Deallocates the memory of objects that are not marked as live.
  • Is automatically run by the JVM and not explicitely called by the Java developer.  Unlike languages such as C++, the Java developer has no explict control over memory management.
  • Does not manage the stack.  Local primitive types and local object references are not managed by the GC.

So if the Java developer has no control over memory management, why even worry about the GC?  It turns out that memory management is an integral part of an application's performance, all things being equal.  The more memory that is required for the application to run, the greater the likelihood that computational efficiency suffers. To that end, the developer has to take into account the amount of memory being allocated when writing code.  This translates into the amount of heap memory being consumed.

Memory is split into two types:  stack and heap.  Stack memory is memory set aside for a thread of execution e.g. a function.  When a function is called, a block of memory is reserved for those variables local to the function, provided that they are either a type of Java primitive or an object reference.  Upon runtime completion of the function call, the reserved memory block is now available for the next thread of execution.  Heap memory, on the otherhand, is dynamically allocated.  That is, there is no set pattern for allocating or deallocating this memory.  Therefore, keeping track or managing this type of memory is a complicated process. In Java, such memory is allocated when instantiating an object:

String s = new String();  // new operator being employed
String m = "A String";    /* object instantiated by the JVM and then being set to a value.  The JVM
calls the new operator */

training details locations, tags and why hsg

the hartmann software group advantage
A successful career as a software developer or other IT professional requires a solid understanding of software development processes, design patterns, enterprise application architectures, web services, security, networking and much more. The progression from novice to expert can be a daunting endeavor; this is especially true when traversing the learning curve without expert guidance. A common experience is that too much time and money is wasted on a career plan or application due to misinformation.

The Hartmann Software Group understands these issues and addresses them and others during any training engagement. Although no IT educational institution can guarantee career or application development success, HSG can get you closer to your goals at a far faster rate than self paced learning and, arguably, than the competition. Here are the reasons why we are so successful at teaching:

  • Learn from the experts.
    1. We have provided software development and other IT related training to many major corporations in Sweden since 2002.
    2. Our educators have years of consulting and training experience; moreover, we require each trainer to have cross-discipline expertise i.e. be Java and .NET experts so that you get a broad understanding of how industry wide experts work and think.
  • Discover tips and tricks about SOA programming
  • Get your questions answered by easy to follow, organized SOA experts
  • Get up to speed with vital SOA programming tools
  • Save on travel expenses by learning right from your desk or home office. Enroll in an online instructor led class. Nearly all of our classes are offered in this way.
  • Prepare to hit the ground running for a new job or a new position
  • See the big picture and have the instructor fill in the gaps
  • We teach with sophisticated learning tools and provide excellent supporting course material
  • Books and course material are provided in advance
  • Get a book of your choice from the HSG Store as a gift from us when you register for a class
  • Gain a lot of practical skills in a short amount of time
  • We teach what we know…software
  • We care…
learn more
page tags
what brought you to visit us
Stockholm, Sweden SOA Training , Stockholm, Sweden SOA Training Classes, Stockholm, Sweden SOA Training Courses, Stockholm, Sweden SOA Training Course, Stockholm, Sweden SOA Training Seminar
training locations
Sweden cities where we offer SOA Training Classes

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.