Curiculum Vitae

 

Personal Data

Name: Hans Elfberg
Date Of Birth: 15 July 1977
Place Of Birth: RENGSJÖ, Administrative Province Of GÄVLEBORG, SWEDEN
Nationality At Birth: Swedish
Nationality At Present: Swedish
Place Of Residence: THAILAND
Contact Information:
e-mail:hans@elfberg.se
ph:+66(0)87 601 88 13
Language(s):
  • Swedish spoken/written (mother tongue)
  • English spoken/written (very good)
  • Thai spoken/written (good)
Hans Elfberg

General

I'm a practical person who can work independently by my self or as a part of a larger team. I have worked with a lot of clients, and their feedback tells me that they are satisfied with our cooperation.

I have many different interests: traveling, nature, music, Linux, programming, languages, meet new people etc.

Education

  • Bachelors Degree In Computer Science At The University Of Gävle (1997-2000).
  • Upper Secondary School (Extension Of Natural Science) (1996-1997)
  • Upper Secondary School (Electronics) (1993-1996).
  • Nine-year Compulsory School (1984-1993).

Separate Courses

  • ATM (radio-base communication) (2004)
  • Thai Reading/Writing at Payap University in Ching Mai (2003)
  • Thai Speaking/Reading/Writing at ECC in Thailand (2003)
  • VHDL (2001)
  • Delphi (1998)

Professional Record

Production Manager (2006-)

As a Production Manager in Thailand, I lead the Thai staff and manage a wide variety of things to keep the production running.

Consultant (2000-2006)

As an employee at a consultant company I have been working for different companies and with different projects.

Drivers for ATmega128 (2005/2006)

Techniques:
  • I2C
  • SPI
  • avr-gcc
  • Atmel ATmega128
My part of the project has been to develop interrupt based drivers for the I2C interface and the SPI interface of the ATmega128 processor.

uClinux for ARM (2005/2006)

Techniques:
  • uClinux
  • arm-gcc
  • make
  • bash
  • Debian
My part of the project has been to setup the development environment for an Atmel ARM evaluation board and configure uClinux for the evaluation board.

The development environment was built on the Debian distribution.

Ethernut on a Custom Board (2005)

Techniques:
  • Ethernut
  • AVR ATmega128
  • avr-gcc
  • make
My part of the project has been to make it possible to run the Ethernut software on a custom developed hardware.

Ethernut is an open source project.

Embedded Linux Development (2005)

Techniques:
  • Embedded
  • Linux
  • SNMP
  • bash
  • make
My part of the project has been to develop and maintain software for an embedded Motorola PowerPC based environment. I have basically worked with the SNMP client and the startup scripts.

Development Environment Administrator (2005)

Techniques:
  • Linux
  • Cross-compiler
  • make
  • bash
  • Perl
I worked with maintainens of an AMD64 cross-compiler development environment for an embedded Motorola PowerPC based target. Both the host and the target were running Linux.

Alarm Monitor Software (2005)

Techniques:
  • Embedded
  • Atmel AVR processor
  • avr-gcc
  • Interrupt handling
  • RS232 communication
My part of the project has been to develop a software to monitor the output current of the radio base hardware used for cellphone communication.

Web Based Configuration Tools (2005)

Techniques:
  • Dynamic HTML
  • Javascript
  • Linux
  • AppWeb™ - Embedded Web Server
My part of the project has been to use Javascripts to create dynamic HTML pages. The configuration tools are dynamic HTML pages, distributed by a web server. The web server is running in an embedded Linux environment.

Embedded Device Development (2005)

Techniques:
  • Microchip PIC processor
  • Assembler
  • I2C communication
  • MPLAB
  • Interrupt handling
My part of the project has been to develop an interrupt driven I2C slave. The development environment has been MPLAB. All the code has been written in assembler exclusively.

Embedded Test Code Development (2005)

Techniques:
  • Motorola PowerPC
  • SDRAM testing algorithms
  • Diab development environment
  • Multi processor hardware
  • Dual Port RAM
  • Cross Module Message Handling
My part of the project has been to implement algorithms for SDRAM testing in an embedded test environment, as well as develop the test environment itself.

Special care has been taken, during the development phase, to make the same source code compilable for different PowerPC hardwares.

I have modified the test system to make the code run on different CPUs at the same time on the same circuit board.

I have also developed message handling between the different CPU modules of the circuit board.

Windows™ Based Software (2005)

Techniques:
  • C#
  • .NET Visual Studio
My part of the project has been to develop support for a new file format in a database application.

Electrical Current And Voltage Control Software (2005)

Techniques:
  • Embedded
  • Assembler
  • Atmel AVR processor
  • AVR studio
  • Interrupt handling
  • A/D conversion
My part of the project has been to develop a software to monitor the output voltage and control the electrical current in a power supply.

The system uses hardware interrupts and I/O ports to control the electrical current, and a A/D converter to monitor the output voltage.

Supervisor Of a Production Site In Thailand (2004)

The work implied the following positions:
  • Project manager
  • Test engineer
  • Personnel manager
  • Purchase Manager
  • Service technician
I was the supervisor of a small production team (five persons (Thai nationals)) in Bangkok.

My job has been to lead the project, take care of (and mend) our equipment, support the production personnel, ensure continuous supply of material etc.

Temperature Monitoring Software (2004)

Techniques:
  • Embedded
  • Ix86 processor
  • Microsoft Visual C++
My part of the project has been to develop a temperature monitor in an embedded system.

Embedded Test Code Development (2001-2002)

Techniques:
  • Embedded
  • IBM PowerPC
  • Motorola PowerQUICK
  • Infineon QFalq (E1, J1 and T1)
  • Serial communication (ATM, RS232, etc.)
  • Hardware drivers
My part of the project has been to to develop new tests, maintain old tests, and develop the embedded test environment itself (develop hardware drivers etc.).

Test responsible (2001-2002)

My work implied:
  • Manage upcoming problems
  • Maintain old tests
  • Develop new tests
  • Teaching
  • Writing course material
My job has been to provide solutions for upcoming problems related to the hardware tests of two different circuit boards, and update the test software as the hardware changed.

I was also sent to Poland to teach about fault finding, and how to use the test software to find out about faults.

EEPROM programmer (2000-2001)

Techniques:
  • I2C
  • PC Parallel Port
  • Ix86 Processor
  • Microsoft Visual C++
  • Threads
  • Callback
My part of the project has been to develop an interface, between the PC Parallel Port and the EEPROM circuit, and the software.

University of Gävle (1999)

I worked as teacher during one semester at the university in parallel with my studies. I was teaching the C programming language.

ABB

In the summer holidays at the time of my university studies I worked as an employee at ABB.

Summer Holidays Employment (1999)

I developed a generic parser for configuration files. Work implied:
  • Programming in Delphi.
  • Working in an electronic hardware oriented environment.

Summer Holidays Employment (1998)

I developed calibration software for a measurement system. Work implied:
  • Programming in Delphi.
  • Working in an electronic hardware oriented environment.

Operator At The Cinema (1995-)

I'm a certified projector operator. Before I used to work as an operator at the cinema on a regular basis. At this time, however, only incidentally.

Local Government

Attendant (1995)

Working as an attendant during the summer holidays.

Attendant (1994)

Working as an attendant during the summer holidays.

References

Given by request.
 

Updated on: Sun Oct 15 13:51:25 ICT 2006
Valid CSS! Valid XHTML 1.1!